How do I fix and prevent corrupted MySQL tables?
Have you tried 

REPAIR TABLE;


or 

 myisamchk --recover tbl_name


http://dev.mysql.com/doc/refman/5.1/en/repair-table.html

--EDIT--

As mentioned in the comments under your question, convert your tables to InnoDB tables which are transactional. This should help prevent corruptions in the future.