Do you have ssh access? you could do the following:
login to ssh
cd /home/
tar -cvf yourusername/backup.tar /yourusername/
cd yourusername
bzip2 -9 backup.tar
ftp newhost.com
(enter new username)
(enter new password)
put backup.tar.bz2
(wait around for a while while it transfers)
wait until you see "226 File successfully transferred"
bye
ssh newhost.com -l newusername
bzip2 -d backup.tar.bz2
tar -xf backup.tar
cd oldusername
mv * ..
exit
(complete steps to backup your databases using mysqldump)
exit
You could probably even hire
www.websitemovers.com to move all your data to the new host.