Thanks for your take on it. I'm fairly new to the world of programming, development, Linux, etc., so I'm always looking to learn things and make something of my own. A mail server sounds very neat in that regard, like building your first computer, but it sounds like in reality it's best left to the experts. I currently have a G Suite account for my custom domain, so that's probably good enough.
I don't mean to discourage anyone who wants to experiment... It's actually really interesting with a lot of options in terms of running your own. It helps to learn things from the security aspects, to the use of tools for spam, greylisting, dns lists etc. On the flip side, I wouldn't do it for my primary email again.
In the end, if you want a career in IT, or find it interesting, I'd say go for it. I've often thought about building my own end to end open-source mail service aimed at ease of administration. If I was ever rich enough to not have to work, that's one of the things I'd probably do after a few months off.
I'd suggest starting with a secondary domain and using Mail-In-A-Box on a VPS or smaller Cloud host. It's a decent starting point, and there are many other options. One of my favorites is SmarterMail (commercial, windows only though). I also ran a BBS for a number of years using Synchronet, which does email/pop/smtop and even nntp for group messages. I did have it configured with SendGrid at the time for outbound for a while, which handled delivery issues for me.
You will have headaches if you take it seriously and/or use it as a primary service without using a delivery service like MailGun or SendGrid, and even then you probably will have other headaches. My point isn't really do discourage so much as let people have a more realistic understanding. The issues the OP has are real. However, there is so much junk from bad actors that the well is poison.