How do I flip flop worlds (levels) that should be placed in same place?

I have a logical trouble. Could someone tell me how can I do to resolve this?

I want to make an house that is the core of my game; I need to change the world surronding the house (landscape, assets, sky and everythig) depending on the player’s location in the house. when he’s in one room the external world should be one, when he’s in another room the external world should be another. The player will have the ability to go outside from every room. Logically when he goes out I have to close the other ways out; he could return in the house only from the door he used to go outside.
Everything should be realized without in-game loadings. Is there any way to load all at the game start and flip flop elements depending on what I said? Is it a question of level steaming or object hiding? I will appreciate every solution.

Thank you so much in advance.