I had huge problems with spam on Fastmail, enough that after my year ended I moved to another provide. I really liked Fastmail, and the service was pretty good (although when I asked them why my domain was getting put into spam filters they couldn't really help much).
Now I'm with Mailbox.org, and they're really good. A little cheaper too.
Now a days there aren't actually good free providers. Google charges a yearly fee if you want to use a custom domain.
This wasn't true when I originally switched to fastmail. Back then google still had a free personal google apps account which supported custom domains. I pay fastmail because I know what the deal is. I pay them $50 a year and they host my email with my domains. There is no question about what trade we are making. In addition I'm getting to pay a very small amount and support fellow developers building a good product.
The old saying is that with google you are the product. Your information is being parsed, stored, tracked, and used to advertise to you. I'm happy to pay a bit of money and not be the product. I don't do this everywhere but there are more then a few places it is true. I also despise ads and will pay money to opt out of them almost everywhere. YoutubeRed, iOS games, etc.
Because they aren't free, there is always a cost. Not only that, a single Gmail tab can take up 350-500 mb RAM. Lastly, getting Gmail on a custom domain is not "free" anymore.
Now I'm with Mailbox.org, and they're really good. A little cheaper too.