You could store the player’s previous position in global scripts (autoloaded script).
If you enter the scene again, you could check the position stored in the global scope and apply it (in the _ready() function)
(At least that’s what i do when i re-enter my tilemap from another scene and it works…)
For global scripts please have a look at:
Yes, seems the best to keep datas, though the docs about it is a bit short. Could you be a bit more specific about your scripts?