The problem with the snake's lack of memory for its positions arises from the fact that it can fall at certain points. If it moved like a classic snake game, the problem wouldn't exist. When the snake falls, it changes not only the position of its head, but also that of the body behind it, positions that can't be used, as is, when going back in time. However, if I had programmed the game with the idea of taking steps backward, I would have chosen a different approach to developing the code, probably.
In any case, development is progressing, and I've solved most of the issues. There's no problem adjusting the rewind speed, so I think I'll do as advised. The only limitation: you can rewind a maximum of 255 positions, which is still a decent number, given that most levels take about 100 to 150 moves to complete.
I also thought about including achievements for each level: one star if you complete the level, two stars if you complete it without using rewind, three stars if you complete it without using rewind and in a certain limited number of moves.