This is so annoying. It’s also so typical. Your niece does not understand that a baby doesn’t understand language. She may be used to having all the attention and toys (if that’s what you mean by emphasizing that she was the first grandchild), and she may not know why people are fussing over a baby.
Let me suggest that you print out your question, and file it in your child’s memory book or someplace else where you’ll rediscover it in a year or 2. You will be in exactly the same situation, with a child in the terrible twos. Remind yourself that young children are self-centered – that’s not an insult. It’s just reality. They want everything – which is why we have childproofing items like outlet covers, staircase gates and cabinet locks. It’s why we hold their hands instead of just telling them, “Don’t go in the street.” In fact, when they are 3 and go to preschool, this is exactly the sort of behavior that teachers work on – sharing items, moving from an individual kid’s desired activity to the designated class activity, learning to negotiate their own space without yelling or hitting, and how to separate themselves from Mommy and Daddy and listen to another caretaker. So your niece is 2.5 and she doesn’t yet know how to do any of this. Your child won’t either, and you’ll have to wait for a certain amount of emotional development before you can expect it.
So, how to handle things in the short run? Your best bet it to ask your SIL and BIL what words/phrases they use to “police” their child, such as “We don’t yell” or “Inside voice, please.” And absolutely say “No hitting” and “No kicking.” Learn to anticipate it and get in between her and your child. Read up on how to redirect a toddler.You can also say, “She’s a baby and she is not going to do what you want. Let’s go play with big kid toys,” or even “If you want to play with her toys, you can ask me. And you can trade one of your toys with her.” (Then make sure it’s a baby-safe toy, of course.) When you point out to the toddler that her techniques don’t work, over time, she’ll learn. They don’t have to understand the reason, so don’t bother explaining hat she’s hurting or annoying anyone – she doesn’t get it, and she’s not old enough to care. Kids don’t have empathy yet – they only know when their actions cause more problems for themselves. So work with that.
I think it’s okay to not protect your child from every bossy older kid – she’s going to face it her whole life. We can’t mow down every obstacle in their lives. However, if your niece is just impossible by anyone’s standards, you can pack up your child and her toys, and move her to a quieter or safer room. That can be very effective if done a few times, so a toddler learns that her behavior results in isolation. You’ll be doing this yourself when your currently-contented child becomes a “three-nager” with all the joyful behaviors of a teenager, complaining when things don’t go her way. Don’t do it in a huff, just in a matter-of-fact way, since there’s no nice way to say to your in-laws, “Your child is a meanie.”
I think you and your husband might want to rethink your vacation plans. If you don’t like his family (and it seems you do not, since you point out it’s them and not your calm child causing the problem), start doing family vacations or stay-cations. If you are committed to this weeklong vacation this year, then I’d invest in a pack-n-play or one of those folding fence things that creates an instant pop-up infant play space that people use at the beach or even to keep their puppies contained in an area of the kitchen. Baby toys and your child go inside, niece and her toys have the run of the house. Easy.