If the distro can't be made crash-only, perhaps just the Linux kernel could. After executing shutdown scripts for userspace services, just crash the kernel. Good tests for filesystems and device drivers! :)
As for userspace, well, e.g. Firefox is a lot of the way there. SQLite itself is designed to handle failures extremely gracefully, and by virtue of regularly flushing most of its state into SQLite, Firefox itself achieves a great deal of reliability (although this might not be true of its cache storage, etc.).
A few people have been looking at stateless userspace eg see http://www.infoq.com/presentations/Runtime-Changes
Current Linux distros generally have too much poorly documented state in the filesystem, much of which may not be updated in a crash proof way...
Definitely take a look at Sudden Termination as Apple calls it. It is one of the few features along with restoring apps as they were upon login means that a reboot is no longer a productivity killer.
(I don't know if there's a cleaner way to do that, without manually saving all the tabs in every window)