You can reconnect to the room when the host disconnects, and become host; if you kept track of the peerids you can swap out the game state variables after the previous host reconnects as peer.
If the previous host got a new ID but was able to reconnect to the previous room ending up with the same peer (which is now host) it can inform the new host of its presence and they can swap out game states and the new host can update the peerids on the objects of the previous host. (This assuming the previous host also preserved game state of various objects, such as peerid of the peers.)
You can keep track of objects and states in various ways, like saving an objects state asJson in an array or other variable, and build a new object based on that info after successful reconnecting with the known peer.