Hello,
I work as a technical consultant desingning and setting up mainly Microsoft based infrastructures for global customers.
Regardin your project, I would strongly advice against setting up own email server. Work envolved with administrating email server, keeping up with virus definitions, email whitelisting and so on, is very time consuming and benefits only companies with large empolee base.
Unless you plan to run custom programs or scripts requiring email server local access there really is no point doing that.
My proposal is following,
Sing up for Office 365, set the two domains for separate Office 365 accounts or in case you want to administrate both companies from one portal set both domains under one Office 365 account.
Add users to Office 365, set which domain user will be under which company (domain). This way Microsoft will take over administrative tasks of servers and won't have to worry about anything else than administrate the user accounts.
For the website hosting you can set custom websites with ftp-access via Azure or you can use the server you created as a web server and host the sites in it. If you plan to host websites on your own server you'll benefit with local access to the server but end up with administrating the server (Azure forces the Windows Updates, some testing to check if everything is working is required from time to time).
If you just want to have basic websites and email services, I would suggest to use hosting.