You get a notification when Windows plans on restarting somewhere in the future. I just click on it and manually set the restart date 1 week in the future. That's it.
I'm also leaving the computer on for weeks and never had an unexpected reboot with this protocol.
This doesn't work if it's been a while since I last booted into my Windows partition. Windows immediately decides I'm past the point where I can defer. It does show a notification immediately beforehand, but if I'm asleep that isn't useful.