Having a starting room that initialises/resets all the variables could be a good solution, including a "start again" button after each ending that sends you back there.
That's a good idea, yeah. I'll have to try that in the future with my next Twine project or just experiment a little with one of the ones I have already. Thank you for the suggestion!