Firstly, there is NOTHING wrong with putting a candle in a cake and singing Happy Birthday to a 3 year old, even when it isn't his birthday. Trust me, they grow up fast enough and realize the world 'isn't all about them'. Is this the 3 year old in the same family as the twins? If so, I would go out of my way to make sure he realizes how special and loved he is. Of course, even not, he should still be shown how special and loved he is.

If someone comes to my house and insults my guests, I would say something. But, your sister should also stick up for her own child, too. No need to have a war, but maybe, "seems you have forgotten what it is like to be 3, we haven't. Please back off" or something to that effect.

Oh, the horrors of a child sticking his finger in a birthday cake! I can only presume your BIL never, ever eats out in a restaurant. Talk about dirty/germy.