Very strange. I have a 2001 M600 that starts fine when the engine is cold, and also right after a ride when it's hot. But if I turn it off and let it cool for a half hour, it won't start. Nothing happens when I press the starter. I can wait a few hours for it to cool more, then I can start it again. Anyone know why it's doing this?
You probably have high resistance somewhere that builds with heat. I would start first with the battery terminals and engine ground. Don't just look, disassemble and clean. On the battery disconnect negative first, connect negative last.