You can do this using the Screen Sharing feature in Leopard, a VNC client, and DynDNS. This at least takes care of the remote access part. You may want to use something like DropBox for direct access to files. Here is the cliff notes version of how to do it:
1) Go to your System Preferences, Sharing, and enable Screen Sharing. Click on computer settings and set a VNC password.
2) Do port forwarding on your router to forward port 5900 to your computer.
3) Create a DynDNS account (
http://www.dyndns.com/) and a hostname. Basically, it would be something like example.dyndns.org which will point to your internet connection's IP address. This guide walks you through the basics:
http://www.dyndns.com/support/kb/dyndns.html
4) Install the DynDNS Updater 2.3 on your mac here:
http://www.dyndns.com/support/clients/ so it will keep your DynDNS hostname up-to-date whenever your IP address changes. So a Dynamic IP address won't be a problem here.
5) Download a VNC client (such as JollyFastVNC
http://www.jinx.de/JollysFastVNC.html) and configure it to connect to your DynDNS hostname and type in the VNC password you configured on step 1).
6) It should work!
How do I know this works? I do it myself to connect to my home computer and my parent's computer. Plus I work for DynDNS on their Customer Support team and I am currently writing up a guide on exactly how to set this up, so I am open to hear for improvements on this setup from all of you. Do note, this is my cliff notes version, I am working on one with nice screenshots and more direct steps.