How to prevent windows from deleting specific old custom restore points

Windows doesn't delete any restore point created by windows or user. They get deleted if the restore points take up much of the memory allotted to the restore points.

So, to create new restore points Windows needs to delete the old ones as to create new restore points. If you do not want Windows to delete the restore points, then you can increase the memory for restore points or can use some software like CCleaner which can delete all restore points (based on user choice). Also you can backup restore points, but it's very complicated to restore them from the backups.