It sounds like there is some complexity and I am not sure I followed it all, but I will try and answer your question anyway.
Generally, DNS stuff should be relatively easy. But sometimes it takes a bit to get a hold of. To simplify things, I am going to recommend that you only use one set of DNS servers.
You have registered your domains with a company- your registrar, and you host your site with one or more hosts. Easy peazy so far. I always recommend using the DNS of your registrar for one simple reason- DNS is a huge part of their business and therefore it is likely they do DNS well. So I would recommend making your life a bit less confusing and use your registrar for all DNS stuff. Another reason is simple, using multiple DNS servers over several companies, unnecessarily complicates the issue.
You will need something like this:
An NS record for ns1.myregistrar.com
An NS record for ns2.myregistrar.com
An A record for mydomain1.com
An CNAME record for www.mydomain1.com
An A record for mydomain2.com
An CNAME record for www.mydomain2.com
An CNAME record for mx.mydomain1.com
An MX record for mx.mydomain1.com
At first, your mydomain1.com and mydomain2.com will be two different IP addresses since they are on separate hosts. When you move mydomain2.com, you will obviously need to change your IP address for the A record. I like to create a CNAME for mail sub-domains and www, but sometimes it should be an A record. It all depends upon the DNS server. You will have to experiment. However, for most DNS servers either a CNAME or A record will do just fine.
You need a SOA for your domains. An SOA record is the statement of authority for that domain. It is often best to keep all DNS records in one basket for the simple reason that someone must act as the SOA and if you divide your DNS records over two DNS servers your SOA may be missing something important. Since registrars are often the SOA for most domains and are set up to take on that role, then it is always best to allow your registrar to be the SOA with all your DNS records.
For this reason, I suggest setting your NS records to be your registrars name servers, let the registrar be the SOA, and only use one set of DNS servers, you guessed it- your registrars. You will want to set this up and remove all records from your host DNS to remove confusion but only after the TTL times for you domain expires. The TTL is a number representing seconds (time to live- aka the amount of time a DNS record is cached) and 3600 is common, though 600 is also common and longer times also common. To be safe add your registrar DNS entries, and then say about half a day later or the next day, remove the host DNS records.