Really, its simple.
Warning, warning, warning. Boot only after the first warning is given and after double the boot time. If a player is consistantly going over the boot time, after being warned, then I feel no further warning is needed.
I think that there is an easy solution, not necessarily the best though. Dont create/join a game with direct boot. Create/join a game that has vote to boot only. This probably would work best in a free for all game, not so much in team games.
See the link I posted recently.
http://www.warlight.net/Forum/Thread.aspx?ThreadID=809