Jank mail filters don't just filter spam. They also filter all the unwanted mail that we get. When you join a site, you often have to agree to get their newsletter but you don't really want it. So you filter it as spam. So it's possible that your emails are being filtered the same way. Rather than unsubscribe, the readers just add it to their spam lists.
Also, such filters use content based filtering. If your email reads like a spam message (e.g. selling something) then the filters at gmail and yahoo will shift it to the spam folder. Some hosts might even just drop the email completly. It's wouldn't be your IP that is banned, but rather the content of the email.
Another option is your email system is not setup right. For example it is not supplying the right header information. Since much spam tries to fake the hearder info, if your setup is incorrect it may look like spam when it is not.
Lastly, maybe your are on a black list. Have you checked. The likes of spamcop and similar have lookup tables where you can check your IP against the small blacklists.
Try altering the wording of your emails to look less like spam and more like normal mail. Also try to clean up your list. If many of your emails are going to addresses that no longer exist or were fake to start with, then they will bounce. Many bounces might mark you as a spammer. So by cleaning the bouncing emails out of your list you can target only the real email addresses and have a more productive list.