Just last night my bf exploded into this huge rant. He was just so frustrated and angry and couldn't hold back anymore and just started yelling about everything. Most times he rants a little, and I interject to try and solve the problem, we snap at each other and we both get frustrated, but last night I just bit my tongue and let him go on because I knew he needed it (even though I felt like screaming and punching walls). And he told me when he was yelling, that when he gets all pissy and upset and doesn't know what he wants, that I shouldn't just back off and ignore him. He just wants me to rub his back or pet his hair, and just let him know everything will be ok. I didn't know this of course, because he gets so irritated and pissed off I figured he wanted to be left alone. And when I've tried to cuddle up near him he acts like I'm not even there, or like I'm annoying him. But I guess I was wrong. So maybe next time your boyfriend goes off on a rant about whatever, you should try and comfort him? Maybe that's all it takes. Along with a little time, of course.
You should also talk to him about his anger problems, and try and get him to go to an anger management class. I would hate for you to get hurt.