To cut down on the amount of work needed to create a project that gets corrupted in some way, save your project regularly (e.g. every hour) to a new project name e.g. File->Save As myproject_2.mlt
Also, consider backing up your filesystem files incrementally on a regular (say once a day) basis. I have a Windows system and use an excellent (free) backup solution called SyncBackFree. See this very clear tutorial on how to use it: