After a huge amount of experimentation I seem to have arrived at a linux-gui-to-linux-gui remote access solution that performs well and works reliably. This setup does not let you run Gnome Shell -- I don't think Unity would work either -- because that would require compositing support. If anybody has that nut cracked with decent performance, I'd appreciate hearing about it. As far as I know, SplashTop doesn't support a linux client, ruling it out for me.
I use a Verizon LTE hotspot to connect my laptop running Ubuntu 13.04 to the net -- I do this mostly while commuting -- and VPN to my office desktop machne, which also runs Ubuntu 13.04. The latency is mostly not bad, though there are some blips during the train ride back and forth to work. Throughput often rivals that of the cable modem I use at home.
The key for me has been to install a lightweight window manager / desktop environment and run that remotely using x2go's wrapper around FreeNX. I briefly used Gnome in fallback mode, which didn't require compositing. But I believe fallback mode was dropped in Gnome 3.8, and I had to switch to another desktop environment. For me, LXDE (Lubuntu) is performing very well in that role.
I set up the x2go client to run a custom desktop on the target using the command: /usr/bin/startlubuntu. For best performance I found it useful to disable sound, client-side printing, and tunneling file system connections (for shared folders) over ssh.
I really miss being able to hit the Super key to run commands, as I can in Gnome Shell. To compensate, I've installed Gnome-Do and mapped it to Super-Space, which is close enough. I have Gnome-Do set to not show its window on first invocation so I'm basically unaware of it when I'm in a Gnome Shell session.
Have you found a better / different way? Please share if you have.