can the progress made be used so that I don't always have to start the search from the beginning?
Yes.
You removed Xoshiro256plus why ?

Because the Mersenne Twister performed better on smaller puzzles. Specifically, I tested it on puzzle 40.
================= WORK IN PROGRESS =================
Puzzle/Bits : 40
Target Hash160: 95a156cd21b4a69...6864f4c8b82a82a
Prefix length : 9 bytes
Mode : Random
CPU Threads : 12
Mkeys/s : 35.95
Total Checked : 118821993408
Elapsed Time : 00:55:05
Start Range : 8000000000
End Range : ffffffffff
Progress : N/A
Progress Save : 5
Stride : 1
================== FOUND MATCH! ====================
Private Key : 000000000000000000000000000000000000000000000000000000E9AE4933D6
Public Key : 03A2EFA402FD5268400C77C20E574BA86409EDEDEE7C4020E4B9F0EDBEE53DE0D4
Total Checked : 118875620444
Elapsed Time : 00:55:06
Speed : 35.9366 Mkeys/s
Try to solve puzzle 40 in Python using random mode in less than an hour.

✅ Key found : 0000000000000000000000000000000000000000000000000000004b5f8303e9 -> 0b304f2a79a027270276533fe1ed4eff30910876!
⏳ Full time: 2.70 sec.