Wanted to update on this topic.
In the end, the most practical (and best) option to transfer emails to a new hosting account is:
while old server is still live
on new server, create same inboxes with same passwords
do an IMAP sync from new server inboxes for existing inboxes emails (this copies all emails from current email addresses into new addresses at new provider while DNS has not moved yet.
once all these are done, at any time, update name servers to point to new hosting provider
and boom, everything operates as if nothing happened...
Just my 2 cents.