I'm not sure what Server type you are trying this on.
For Windows Server 2012 R2, or Server 2008, you should not need to enter IP addresses for the bindings UNLESS you have multiple IP addresses for the actual server. The host header and port number are enough to sort the traffic.
It almost sounds like you initially added the IP addresses and appeared okay, until an IIS RESET or server restart actually applied the values.
What will happen is this. If you set the IP address specific to a binding, traffic stops at the first site it sees.
e.g.
All traffic will stop at blahblah.com and confuse you with 'Access Denied' messages (because your permissions aren't the same on the site you actually got dumped at), or worse, just show you the wrong web page and confuse you.
All you should need is
- All Unassigned blahblah.com 443
- All Unassigned notnowmom.com 443
Edit:
Server 2008 R2 (IIS 7.0) will only accept one certificate per IP address. So use alternative names on your domain certificate to neatly sidestep this. Or have an IP address assigned to your server per certificate.
Server 2012 R2 (IIS 8.0+) will accept more than one certificate. If you have an individual certificate per host name, start with the first site, 'Edit Bindings' assign the certificate. For the second site and thereafter, check the 'Require Server Name Indication' box, then assign your second certificate, and so forth. Again, using a domain certificate with Subject Alternative Names will allow you to use the same certificate for all the sites. There may be good reasons to NOT do that though, so 'Server Name Indication' is your friend. (Threat Management Gateway 2010 does NOT support Server Name Indication)