I have doubts that the engine is overheating. They don't last long after repeated overheating.
If there is a restriction in the engine intake air filter, the engine won't overheat. Actually it will run colder because the increased vacuum at the carburetor will draw more fuel than the engine can use, causing a rich mixture (too much fuel, not enough air). Black smoke will be a symptom here.
Cooling air, on the other hand is drawn in by the fan at the top of the engine, and blown down through the metal shroud across the cylinder head(s), which is where most of the heat is generated.
When you say you take the engine cover off and it runs like a champ, which cover do you mean? If it's the hood you raise up to add fuel, that's one thing, if it's the metal shroud on the engine, that's something else again.
A lean carburetor mixture (too much air and not enough fuel) can cause an engine to overheat even with plenty of cooling air. Backfiring under load will be a symptom in this case, caused by a plugged fuel filter of pickup screen in the fuel tank.
If the engine is actually overheating, it will not crank right after it dies. It will act like the battery is dead. If it does crank, you are looking for something else.
As far as cooling air, that system is pretty reliable. As long as the screen that spins at the top of the engine is clean, all should be good. You should be able to feel air blowing at the bottom of the engine when it's running.
Something else to check, is low oil shut down. Some engines have it some don't. A broken or loose wire here will kill the engine. There are also lots of safety switches on newer mowers. The seat, blade clutch, brake switch, all need to be functioning properly. Closely examine all wiring where it gets close to anything that may rub through the insulation.