Subscribe to things with personalized individual aliases instead of your main address.
That way you don't get much spam to begin with because they'd have to guess what aliases you use, and you reject anything that's not sent to one of those aliases.
Assuming one of the sites you subscribe to sold you out or was broken into and their alias starts receiving spam, you simply block or disconnect their alias.
If you haven't been doing this, the address you use now (for everything) is undoubtedly on many spamming lists. It's best to get a domain and start moving subscriptions to aliases on that domain.
Nobody should ever know the main account address, it should be reserved for logging in to the account. Even friends and family should be given aliases (because their address books and contact lists inevitably get sold and compromised eventually).