Actually, this is a pretty elegant solution since I can decide within the timer interrupt service routine if I really want to reboot or not and set flags and such to act on when it comes back on line. However, it is unfortunate that the darn boot loader hasn't been fixed yet.
Update 10/29/2011: I found a way to use the watchdog timer and documented it here. The solution uses the watchdog interrupt as a timer interrupt and works nicely. A little bit more code, but it is actually pretty cool.