Two hours is plenty of time. I've suggested ways to increase the pace and so can you. It's a matter of making the decision and doing it as soon as possible. Don't wait until 2015 when Selig is gone. There's no time to lose. We're killing baseball by letting it continue to devolve into a slow motion bore.
Enforce existing rules, implement new rules, blah, blah, blah.
The most direct approach is to just mandate that games are complete after two hours, which at the current pace would be about the fifth inning. New rule changes will become evident. As soon as a team falls behind, it will speed up. When ahead, stall. Force the umpires to work against the stall.
As the clock ticks, an awareness of time will kick in, as it should. Two hours and game called! It's over. Ties count. Maybe two pints for a win, one for a tie. Whatever. Just make it end in two hours, like most movies, as if it's supposed to be entertainment, which now baseball is not.