My roommate, who also happens to be one of my closest friends, has been with her current boyfriend for just over six months. They're serious, and she even plans on moving in with him when our lease ends. He's a decent guy, and I know he loves my friend — I've gotten to know him really well because he's always at our house.
But every time they go out together and drink, he starts to act insanely jealous. They end up fighting, leaving early, and it always sends my roommate into a torrent of tears. Needless to say, I'm the one trying to calm them both down or comfort my friend at the end of the night. And since I'm often out with them, it regularly ruins my night too. Once he sobers up, her boyfriend always apologizes for his behavior and suddenly all is right again. I've talked to her about it before and she agrees that his actions are unacceptable, yet nothing changes.
Last weekend they were going out with some mutual friends, and to avoid one of their scenes, I stayed home. Later that night, they came home in usual fighting mode and I just hit my limit. I decided to confront her boyfriend about his behavior. He heard me out, so I felt like things went well, but within a few days I could tell my roommate was upset with me. When I asked what was wrong, she said she was extremely angry that instead of talking to her I decided to make her boyfriend feel uncomfortable; she even said I was being selfish! I think I did the right thing. Should I be forgiven for standing up for my friend?