I had the database open to check something else, here's the trend in game length since 1920 (all data adapted from baseball-reference.com):
After the slow but steady increase, the decrease in offense and some other minor changes appeared to usher in faster games--a decrease of around 12 minutes, but what was gained has been given back in the meantime.
Unfortunately, I suspect that only one thing can speed the game up, and it's not something that people will like. If baseball were able to migrate more and more people to pay TV (NOT just cable, but more like MLB network), the possibility exists that the (potential) increased revenues could offset the need for advertising dollars, which could decrease the amount of ad time sold. The Wall Street Journal recently ran a chart that showed how much of a NCAA tournament game broadcast was really basketball:
You can read the brief article here. 30% of a basketball game is actually the game itself, which should come as a surprise to no one. A couple of years ago, I went to a Brewers game and was watching the replay in my hotel later that night--they only showed the pitches, and the game went by FAST. It's not the game play that slows down the games.
But that would also require the individual teams to give up their most lucrative revenue streams, the sports networks that the larger teams have built. That is simply not going to happen absent some drastic changes in the game, and as long as the teams own those broadcast rights, they'll sell as much advertising as they can to maximize that revenue stream, which is pure common sense. To pray for shorter games is futile--I think we've entered the era where we can only hope they don't get any LONGER.