My boyfriend ignores me when I'm upset or not feeling on top of the world

I have an amazing time with my boyfriend and he can be really thoughtful and compassionate, that is providing I'm happy! The unusual thing is, when I happen to have a bad day or am feeling rather down and somehow express this to him, he seems to disappear and ignore me completely. I'm generally a happy person so I'm not someone miserable to hang out with but we all have bad days from time to time. The reason I'm having a bad day won't have anything to do with him and I've never taken things out on another person but when his not there as an ear or to offer his friendship, I get upset with him too and feel hurt. The problem is not him to start with but in essence, he creates it to be about him by acting in such manner. When we do speak, he'll say he hasn't been around because I haven't been myself or been too sour to talk to. He has also previously stopped me in the middle of my sentences and changed the subject if I've had anything the slightest negative to say such as even, I don't like our real estate, it irritates me how they can't get back to us. It's like I'm supposed to be a human with no emotions.

Now I know I shouldn't be with someone who I can't turn to but I'm wondering if something explains this behavior? I've tried talking to him about this and he promises to be better but never is when it comes time. I know his previously had bad case of depression so could this be why he can't handle the slightest bit of bad news? Or am I being taken for a wild ride where he just doesn't give a s**t about me and that's why?