I've been in the email delivery software industry for years, and I can tell you that there is is no magic bullet for email deliverability.
First, you have to send email that people want to receive. This means email that people click, open, and use the email and that you get a low number of spam complaints. Confirmed opt-in is a great policy, and will gain you favor with ISPs, but you still need look at your email program from a subscriber's perspective. Are you sending what they signed up for? Did you tell them the frequency when they signed up? Are your messages well enough branded to be recognizable? Your complaint and user-engagement rates are large drivers of deliverability, so this is huge.
Second, you have to tweak. You don't know exactly what the rules are because the ISPs can't tell us. You start with changing things and see what solves the problem. You look for common problems. It helps to have done it before, so you can recognize patterns. Good old fashioned debugging.
Here's a list of things to try with Hotmail, based on my experience:
Sign up for Hotmail's JMRP (Junk Mail Reporting Program). They will send you a notification every time someone clicks on a "this is spam" button. Remove these addresses from your mailing list. This will lower your complaint rates over time.
Sign up for Hotmail's SNDS (Smart Network Data Services). This will provide a web-based login where you can get information on what they are doing with your email. You can also see if you have spamtrap hits and how many complaints you get.
Make sure your bounce processing is working. If you're sending to addresses you should have removed from the list but didn't, hotmail will count these against you.
Check to make sure that the HTML on your email is valid.
Check to make sure that your email has valid character sets. If you're sending Windows-1252 codepage characters and calling them ISO-8859-1 (latin 1) this can cause a problem with Hotmail.
Check your SMTP server transaction logs to see if Hotmail is giving you any specific guidance, such as error messages saying you have a low reputation.
Make sure you are not spreading your mail over too many IP addresses. You talked about keeping the volume "low". If you do this by spreading mail over multiple IPs, that can count against you, as this is a tactic called "snowshoeing" that is used by spammers.
Send at least 20k messages/day/IP to start with, so that you'll send enough mail to build a good reputation at Hotmail. If you don't send enough mail on an IP address, sometimes you don't give them enough data to build a reputation on you.
Realize that Hotmail's standard policy is to spam filter mail from a new IP address by not delivering it to either the Inbox or the Junk folder. This really is a pain because your mail completely disappears. They do this even to good senders. Then once you build a reputation, they will start putting the mail into the Inbox or Junk folders. There is a way that sometimes works to contact their tech support and have them reset this policy for you. (Contact me at dharris@drh.net if you're interested in help.)
Try sending your message from a different well-established IP address and see if it gets filtered. Try sending other messages from this IP address and see if they are filtered. This can help to identify if the problem is IP-based or message-based.
Contact Hotmail. Don't ask them to un-block you off the bat, but ask why you're being blocked and what you can do to help fix things. With Hotmail you need to be persistent, replying to the same ticket multiple times if needed until you get to someone that can help you.
Ultimately you may want to hire a company that specializes in infrastructure for delivering email. Check out my company, www.drh.net. We provide email delivery software, consulting, and monitoring. We would be happy to help you.