The reason I didn't want to go with this solution initially (I guess I should have mentioned that) is because I only want the player to be able to travel to connected rooms. My idea was that if the player was still moving instead of teleporting, I could set up "bubbles/radars" in each room to detect when the player was passing and stop them.
I did end up doing what you suggested, I covered each room with a button that teleports the player to the center when clicked on. Enabling/disabling teleportation to a room should be easy, but I still have to figure out how to detect which rooms are directly connected to the room the player is.