This is the exact problem I had just a few days ago. For some reason, tables sometimes corrupt when optimizing them. I'm very paranoid about ever using that feature again actually.
Just keep trying to repair the table about once or twice every hour and eventually it *should* work. It seems to have a mind of its own. I heave even heard of tables magically repairing themselves with error 28, so go figure
Error 28 - "No space left on device".
Mine kept saying it was in use too by the way, and that's normal under these circumstances.
If it doesn't eventually work then you're in trouble. Backing up regularly (once a week) is *hugely* important,
but my backup admin was on holidays when ours went down which is why I'm lucky to have saved it. If I had high-speed internet I'd do it too, but I'm only on dialup.
Anyway, if nothing works after a day or two, contact your host and let them know what's going on. Their SQL partition may be full.