Yes, TightVNC would pretty much solve your problems. You can't do file transfers (directly) with it, but you can basically make your remote KVM operate with your home computer (a la dumb terminal). You can get around file transfers by doing something like setting up two AIM accounts, and have one send files to the other.
All you'll need is the VNC server running at home with a static IP. There is an option to accept HTTP requests as well, so you can use a browser to do
http://ip.add.re.ss
num/ or use a standard VNC viewer.