Please don't be mean to yourself. You're all doing the best you can with lots of conflicting co-existing thoughts and needs.
i wonder if there are small steps you can take. You've talked to bf about what this does to you. i imagine setting limits is very hard (cuz you're going when you don't want to) but just to mention it, can you think about telling the person that yells that it makes you uncomfortable? Do you have another way to get home if you feel you would like to leave? i'm just thinking if you can tell her the yelling upsets you and, while you're not trying to tell her how to raise her kids, you may need to leave if you get too upset by it, then she will be forewarned and you will be more free to take care of yourself. Just a thought hon. We just want you to be able to take care of your needs, knowing how hard that can be.