If you want to transfer the email accounts and messages for a domain from one server to another, you can easily do this by completing two simple steps. Let's call the domain mydomain.com for example. Make sure that you have an account with the mydomain.com domain or the domain is added as Parked or Addon in cPanel at the destination server.
1. Open your preferred FTP client, connect to the hosting account where the email accounts/messages currently are and navigate to the etc/ sub folder. There you will see a folder named mydomain.com or the name of the domain you want to transfer the messages for. Download this folder anywhere to your local PC. This folder contains the email accounts associated with the corresponding domain.
Now connect with your FTP client to the server where you want to transfer the accounts/messages. Navigate again to the etc/ sub folder and upload the previously downloaded mydomain.com folder. With this, the transfer of the email accounts is completed.
The last step is to transfer the email messages. Before proceeding with step 2, remove or rename the downloaded mydomain.com folder on your local PC.
2. Simply repeat the process from step 1, but this time navigate to the mail/ sub folder of the account where the messages are stored, download mydomain.com to your local PC, connect to the other account where you want to transfer the messages and upload the folder mydomain.com to the mail/ sub folder of the destination account. With this, the transfer of your email accounts and messages is completed.
You should be able to open cPanel > Email accounts of the destination account and see the email accounts for mydomain.com listed.