First of all you need create new email account on your new server but it must have the same address and password as the old one. To do this go into cPanel on new server and click “Email Accounts”.
Then download all files of old server. You must connect to your old server, use FTP programs like CuteFTP, filezila or FireFTP to do this. From the root directory go into “mail/domain.com/emailAccount”. There can be a lot of files but we are interested in two folders there are the “new” and “cur” download this folders on your local machine.
If all it’s well upload this folders to your new server go into the same directory on new server, from where we have downloaded the folders “mail/domain.com/emailAccount”. Upload new and cur folders here by overwriting the existing ones. If the size of your mails is big it can take some time.
Now we only need to update mail quota on new server because without this your mail would still show you 0MB/xxxMB or something same. That happen because you are just created your account, and new cPanel never had any records of the mails coming in. In the same directory “mail/domain.com/emailAccount” are “maildirsize” file, that have the both of servers. You just need copy the contents from “mialdirsize” file on old server to your new one.
We are done it.