There is the Save Versions
feature you can try.
https://docs.blender.org/manual/en/latest/editors/preferences/save_load.html
However I don’t know exactly how effectively you can control the result, or how well you can recover.
If for example the corruption is on the part of data structures in memory (if there is a case such thing to happen), you have corrupted data getting into the hard disk right from the start. If the corruption happens by the time of the writing (due to some OS - filesystem reason) you might have a chance to recover from a .blend1
file provided that the write there was successful.
My personal preference on this subject, is to keep intense versioning. Such as for example when you reach a certain important milestone in your project, you just hit the Numpad +
and increment your filename by one that way you might have your project broken down into timesteps.