I have always been able to change the port number with Windows Server 2003/XP/Vista by editing the registry key HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp\PortNumber
With Server 2008 however this does not seem to work. Does anyone know what else you need to do to make this work? See below!
On Server 2008, in addition to changing the registry key above, you also need to create a new Inbound TCP rule in your windows firewall to allow connections on your new port. You can then disable the existing remote desktop inbound rule (which is hardcoded to port 3389)
For home systems, i usually disable the firewall anyways, but this may apply for Windows 7 installations as well.