I've never set up Cygwin on a USB drive, and then tried to transport it between computers, but that's the first thing I'd try.
Then you could write a simple script to do an rsync-over-ssh to your server, and just run it directly from the USB drive.
It would probably be best to test it on at least both Vista and XP systems, to make sure it works.
I'd use ssh keys, so that you don't have to worry about keystroke logging. You could also make a user for it on your server side, and lock it down to just allow the rsync in.
Look into the '--link-dest' option to rsync, this allows you to really easily do incremental backups, each time you backup your new backup directory has all the files in it, but any files that haven't changed are hardlinked to the previous version, so you don't take up much disk space. Really, really cool.