Last I checked, Zoho was per address; This guy specifically looked for domain support (meaning, potentially hundreds of addresses).
PurelyMail seems to charge by storage, not mailbox address; and AFAIK so does Migadu (which, up until reading this post, I thought was unique in that).
I will admit it's unfortunate to have to pay per inbox on FastMail. I can't even pay less for my second box to be smaller and more limited, it must be at the same rate as my main box.
They do allow infinite aliases which covers most of my needs, but when I wanted to use a FastMail box for my home automation system's service account it didn't make sense to do so.
Zoho is per user/inbox but a single user/inbox can receive emails for multiple domains and email ids. You can also set up individual sending identities. I am currently receiving email for 7 domains while paying for one.
There is an undocumented limit though. You can generally only have upto 30 aliases.
PurelyMail seems to charge by storage, not mailbox address; and AFAIK so does Migadu (which, up until reading this post, I thought was unique in that).