Um, you get an email at gmail, hotmail or whoever to use with setting up a domain, server space, etc. You are making it a lot more complicated than it is. I have my own mail server, have since the 90s. If I wanted to set it up again on a new domain it would take me an afternoon.
The problem isn't that this is difficult, but that it isn't an option for the ordinary person because there's a learning curve involved (as a former sysadmin I already had the knowledge) And there are some compromises (i.e. I am limited in my ISP choice since I need a static IP where I control the reverse map, though if I went with a hosted option or set up a VPN tunnel to be my MX I could get around that)