One thought that occurred to me during the draw fest that was the 2011 Candidates matches was a slightly different approach to the problem of early draws. Unlike other sports that use time limits (football, basketball, hockey etc), chess doesn't have a fixed amount of time that has to be played. It has an upper limit, but not a lower limit. So instead of saying no draws before move x, disallowing draw offers before x minutes, is a way of bringing chess more into line with other sports.
Under this approach, spectators would at least get a guaranteed amount of action, in the same way that you get 90 minutes of football, or 80 minutes of Rugby. For a game that starts with 90 minutes each (plus increments), no draw offers in the first 2 hours should get most games to the middle game before peace offers would be considered.
Of course a player might be tempted to play slowly to get to the 2 hour mark, but they then run the risk of having the draw offer knocked back on the grounds they only have 10 minutes left on the clock.
Now I'm not saying this is the only cure for short draws (as other approaches are being refined) but it might be worth throwing it into the mix of ideas.