This situation has arisen either due to cultural norms for your husband’s family or due to an overbearing MIL.
The first needs a bit of understanding for sure but even so, she has to remember that this is your country, your baby and your wishes that count above her own. Her cultural norms don't over-ride yours and it is for you to decide how much of hers you are ready to include in your family life going forward, but especially for the birth of your baby.
Not having your agreement about the timing of her visit is not OK. You should be able to decide the arrival and return dates.
Bringing an extra guest, guest rooms or not, without your specific invitation is not OK.
Deciding to stay for 3 months is not OK
Turning up at hospital uninvited is not OK
Preventing you from buying what you need for your baby is not OK.
Bulldozing you is not OK.
Your husband’s preference to blindly agree with his mother, against your wishes, is not OK.
All of this coercion has already spoilt your late pregnancy experience and is about to spoil your birth and bringing new baby home time.
Unless you act now.
OP, I fear your DH isn’t going to support you at all.
Therefore, please summon the courage to tell him you are going to speak to her yourself to tell her your wishes and expectations for her visit….. tell her the duration of her stay. No extra guests at all. And no hospital visits without your specific invitation. Tell her how things happen in your culture. All of this, she needs to know before she decides to get on the plane. She needs to know that you are firmly in charge of your own household.
If your DH over-rules you then I guess you will have to think about leaving him or at least separating until your baby has safely arrived and you are settled into a routine on your own.
I hope you have somewhere to go …your own parents will gladly take you in hopefully.
OP don’t allow yourself to become victim to this bullying if you aren’t comfortable with any aspect of it.
YANBU to ask him and her and her guest to stay elsewhere, as long as you have support.