You can’t pause everything. What you could do, however, is anchor all the parts in the world (save them for later so you can unanchor them when unpaused). Then, stop running code in any loops (simple if statement to see if game is paused).
There is no way to “Pause” the game in the way you want outside of studio.
As for data not saving when you reset, you could just prevent the player from resting: