Domain Monitor will do it.
The only problem being that although they will send you e-mail alerts when your domain status changes, they aren’t quite as fast as I would prefer. I was trying to watch a domain I wanted to buy, and the alert they sent came about 8 or 9 hours after the status actually changed.
Domain Monitoring with Domain Monitor & more – DomainTools
But at least it’s free, and it’s pretty handy. Also, they claim that they don’t sell your “lookups” to squatters (meaning, when you check to see if xyz.com is available, they won’t sell that info to a squatter if you don’t buy it in 24 hours like many domain services apparently do).
I currently have all of my domains with GoDaddy and they have a great manager that allows me to easily see all of my domains and gives me 60, 30, 10, and 5 day renewal notices on them. If you could migrate them all there, that would be keen.
If not, I believe mydomain.com has some services you can use to manage your domains, even when they aren’t the registrar for them. I used them a long time ago when I was running some servers from home and it looks like the management type stuff is still active.
Hope this helps!
I keep the list in a, errm, FogBugz wiki page and create cases for the maintenance, including renewal. The thing I like about this way of doing it is that the wiki/cases lets you easy keep track of everything that’s happened in the life of the domains.