Email hosting is hard for two reasons. The first is that there are too many parts to configure - MTA, MDA, DKIM, RDNS, spam filter, webmail, etc. The viable solution is to use a turnkey solution like mailinabox, mailcow or mailu.
The second problem is deliverability. At the minimum, you will have to 'warm up' the server. You will have to send a few dozen mails to others and ask them to mark as not-spam. Even then, a lot of other factors come into play - like the IP address block (for example, mails from AWS always gets blocked), domain name and even the top-level domain - they all influence the spam filter score.
Meanwhile, deliverability with Google and Microsoft (incl google workspace and ms 365) are lost causes. Google sends your mail to the spam folder irrespective of your spamassasin score. They provide no viable solution to this. MS on the other hand just drops mail silently. This isn't a bug. Both of them are trying to destroy the federated nature of email and consolidate all email business to themselves.
Meanwhile, the big players like fastmail and migadu get better treatment. Especially, migadu is a good choice if you want unlimited aliases.
Finally, talking about aliases. Most services (except migadu) offer only a few aliases. That limitation is not there for selfhosted email. An alternative to aliases is to use + addresses (eg: mybox+bank@mydomain.com). The advantage of this method is that you can make up multiple addresses on the fly (without registering) using a single alias/address. You can use this in combination with a filter like sieve (server-side) or notmuch (client-side) to sort and filter incoming mail.