Assuming Nameserver on domain name still points at the OLD Host;
OLD Host:
Make a database backup from old host.
FTP down the fileset.
NEW Host:
Set up account, and use cpanel temp domain, it's something like
https://11.22.33.44/~username/
Create database/user etc
Load DB backup using phpmyadmin or whatever
FTP Up the files
Amend /includes/configure.php appropriately
Amend admin/includes/configure.php appropriately
Test New site.
If all working;
Change Nameservers on domain name.
OLD Host:
Shut down live Phoenix site.
Make a database backup from old host.
NEW Host:
Load DB backup using phpmyadmin or whatever
FTP Up the files
Amend /includes/configure.php appropriately
Amend admin/includes/configure.php appropriately
If you get in a muddle, there are
Certified Developers who might quote you for this, though it's not usually the sort of job a Cert Dev would take (I think).