The different e-mail addresses is an idea I have long since liked. Especially if you use password management systems then you don't even need to remember which one goes with which address (or you can of course use the naming scheme of your choice so it is easy to remember).
I use sneakemail (
www.sneakemail.com) -- and have for 10+ years. They generate very random email addresses, tag them, and forward them to you. It is simple to see where an email leaked when it happens. It's replyable (goes back to sneakemail and gets rewritten to take your real address out.)
It handles multiple forward-to addresses (I share the account with my wife).
For more trusted sources (billing, banks, etc) I actually set up a dedicated email address on my own domain... but sneakemail: recommended.
For the 'single time use and who cares' -- I use mailinator. You can use any address without pre-defining it. oinkywoofwoof@mailinator.com, for example. If someone mails it, you (AND ANYONE ELSE!) can read that mail without a password. For all those useless things that you need an email for to get one tidbit of info... this is awesome.