I'm having an issue of: not being able to receive email on (B), I
recently switched my domain from A to B and setup my application on B,
but now email is not working at all.
This can be done through DNS (http://en.wikipedia.org/wiki/Domain_Name_System). A DNS zone can have multiple record types (http://en.wikipedia.org/wiki/List_of_DNS_record_types). In order to host a domain on a particular server, a DNS will have 'A' record (and/or 'CNAME' record/s for sub-domain/s). To receive emails for a domain, a DNS would have 'MX' record. MX doesn't necessarily point to the same server that host the domain.
If you look at your DNS records, you'll see that both 'A' and 'MX' records point to the same server (in your case, server B). So, you probably need to point the MX record to the server A in the DNS. Ref: http://en.wikipedia.org/wiki/MX_record
Once, you did that, please wait for up to 48 hours for the DNS propagation to complete. Then, you will be able to receive emails on server A. Your application on server B can still be able to send any emails, assuming server B is configured correctly to send emails.
I hope that clarifies and helps!