Is there a way to check a blend file's integrity, and/or see a crash log?
As far as I know there is no blend "file auditing" tools, but I may be wrong.

There are however debugging options in Blender. You can launch blender using command line options to activate it's debugging tools and see if any useful output can help you pinpoint your problem. You can see all debug options at the Blender Manual

If you are on Windows you should probably also set up a batch script or a specific shortcut to automatically launch Blender with the correct arguments without having to write them manually each time.

A batch script is also useful to prevent the command prompt from closing automatically in the event of a crash, so that you can actually see what happened and read the output history. It could go something like:

start C:\Windows\System32\cmd.exe /k path\to\Blender.exe --debug-memory


Replace "debug-memory" with whatever you need like "debug-all".

If you model is not too complex (rigged, or animated or with physics) and you don't risk loosing important data you may also force flush a cleanup of settings by exporting it to a non-blender format (like OBJ, or FBX, or 3Ds) so that it is stripped of any settings, preferences or additional Blender specific data that may have gotten corrupt throughout the versions.

Remove any modifiers that you may easily add again later and export only a pure raw base mesh of your Yoda model, and then re-import it in a brand new fresh blend file, so that any settings or outdated information is left behind, and only the clean mesh data is kept, then manually recreate any modifier stack you had.

Your file may also be of use to the developers if the crashes can be reliably reproduced so they can fix any bugs that cause them, although now is probably not a good time with the start of 2.8 development just around the corner big changes are expected, and backwards compatibility won't be a priority.