Your e-mail will go down during a DNS change. The trick is to recover from the outage in the mean time. I would suggest that you set a forwarder to forward your email to go to another account, like Gmail, etc., so anything that goes to Earthlink will arrive somewhere. And set up your domain and mail accounts at DreamHost before you start the DNS change.
Email that thinks you're still at Earthlink will get forwarded to your Gmail account, and email that thinks you're at DreamHost will go to your new DreamHost mailbox.
Do you need your email to work in order to do the DNS transfer?