Your strategy seems good to me. The primary reference that I use for this kind of stuff is Michael Bazzell's book "Extreme Privacy". It goes into some detail about his strategy for using custom domains to compartmentalize things. That's what I base my own strategy on.

The only thing that I would add is that I prefer to "salt" my single-purpose email addresses with a bunch of random characters to prevent enumeration attacks, since it would be trivial to figure out the email address that I use for different services by just guessing. If I used amazon@domain.net, I might also use uber@domain.net, etc. Adding a salt prevents this from happening.