Well, what an interesting selection of replies here... some actually made my jaw drop!
Nmmaikra, this is your home and these are your children and your MIL is out of order with the way she is behaving. I appreciate that they want to spend time with the children, as they live so far away, but your MIL knows exactly what she is doing. She is not misguided, she is being controlling, manipulative and deliberately making you feel worthless. This woman obviously has issues. Would it help if your own mother talked to her?
Your husband needs to step up here - he should be on your side first and foremost and needs to grow up - he must talk with his parents and be firm about what is acceptable while they are visiting. Do not be afraid to make this clear to your hubby. Do not accept any lame "I'm in the middle" excuses - yes, they are his parents, but they have no say over how you bring up your own children. That is for the two of you to decide.
Your in-laws can clearly afford to stay in a hotel in future, so no more simply accepting them into your home. You need space and privacy yourselves and it will be easier for you to maintain a routine you are happy with this way. Put your foot down about this. You are the one left dealing with them while your husband is at work and you have two very young children who are your priority.
As for the gifts, accept them with good grace and then dispose of them/ keep them as you wish, when they have gone. If looking at them makes you angry, just donate them to a worthy cause - mind you, quality clothes and shoes will always come in useful and your little ones will soon grow out of them - it is your choice.
Now for the cake! What a cow! How can this be a "tradition" when she has only son this for her own child? What she means is that she wants it to become a tradition. Again, this is your home and you will make your own traditions. It is completely unacceptable to impose upon you in this way - had she talked to you about this beforehand, you would have had a chance to come up with some sort of compromise, or decline with good grace. Your son is only little, so will not remember, but you are clearly very hurt by this. If I were you, I would have another celebration when they have gone, without interference, and you can make it special just for the four of you. Your son won't know which was his "real" birthday anyway.
I know it can be hard at your young age, with two tiny children to be as assertive as you need to be here - this will come with age and experience. You are right to feel injured by your MIL's behaviour and although you may have been more accommodating to her in the past, you are having the normal feelings of a mother who knows what she wants for her own children. This is the start of settling into your role as mother/protector of your children and is to be applauded.
Sorry for the long ramble, honey. You are justified in feeling the way you do now. Do not feel guilty about this. It is important that things change in the future however, so stick to your guns or your in-laws will carry on in this way for ever. Be firm...be consistent. Quite honestly, if your husband cannot see that this is a big problem, is he even right for you?
I hope you can make some progress here and reach a positive outcome. Good luck! Xx