Well, I finally bit the bullet and got a Linode account. So far I'm pretty happy with it. I figured that with the costs of power and bandwidth, I was almost spending $20/month to run my old server on my own hardware. Incidentally, the lowest-grade Linode VM costs that much and is enough to suit my needs.
Want to share what you're doing with another person logged into the same system? All you need is a FIFO, cat, and script.
On your session: mkfifo foo script -f foo
On the viewer's session:
The viewer can then see everything that you're doing as if they're looking over your shoulder!
After spending all afternoon fighting with my new server and my DD-WRT router, I finally figured out how to get my server to PXE boot and fire up an Ubuntu install. All it really involved was setting up TFTP on another box (my desktop, to be specific), adding a line to DD-WRT's DNSMasq options, and configuring the damn server to boot from PXE, which was the hardest part. Luckily, for those of you who are struggling with it, here's how I did it.