Or download my Castlevania engine and study how I handled doors (ignore the transition effect) and how the objects btop_up, btop_dn, bbot_up, and bbot_dn tie in to each other.
Another thing to try, though I'm not sure how well it will work, is when you collide with the door, use
room_set_code(target room, "player.x=0; player.y="+string(y))
or
room_set_code(target room, "player.x=room_width; player.y="+string(y))
Something like that.