Another thing I'd like to add: It's often said here that when someone shows you who they are, believe them. I know that I disregarded my A's unacceptable behavior for many, many years, somehow believing that it was an anomaly, "not real", or what have you. I finally understood/believed that he really was just one person, not a "good" and "bad" one, and I couldn't have the "good" one w/o the "bad" one too, not if I wanted to live in the real world instead of a fantasy one.
Whatever reasons your BF may give for his behavior, the behavior still remains. Is that something you're willing to live with? You don't have to answer this now, and you certainly don't have to answer publicly here, but I think it's something for you to start considering.