Here what you need to do
1. Take backup of files exist on ftp
2. Go to your database and take backup, I advice you use mysqldumper(google it) for that job.
3. When finished everything related to backup, change domain name name servers to your new host.
4. Start upload files on new host and
5. Go to control panel create mysql database and add same sql user name and password and check sql modify privileges.
6. Wait until domain name points to new server.
7. Import the database using (mysqldumper, big dump, phpMyAdmin)
8. Check the database for errors and repair it.
You are done