I have some magic words for you: "well, when I decided to take time away from important work to spend time with you all, I didn't expect you to be so incredibly rude to me. So, I'm going to head off and do some studying. See you at Christmas!"
Seriously. Your family are WAY out of line and you 100% have better things to do than sit and take it. If they want to have a good relationship with you, they can take the first step by not being complete assholes next time you see them.