Let's get Scientific
While I'm not a specialist in this topic, I'll try to explain it.
Many animals that love in frigid regions pack layers of fat, thick fur and and oily skin coatings to stay warm.
Snorlax gets the ability thick fat so we can confirm it has thick fat.
While we can't confirm if Snorlax has thick fur or not, it probably doesn't since wild snorlax aren't found in cold areas (i think).
As fur oily skin coating, Snorlax probably doesn't have that since it's natural habitat isn't in cold areas.
There's a process called Thermogenesis. In a nutshell, it's when the body warms itself up when you eat. The Pokédex states that Snorlax eats 900 pounds of food everyday so it's safe to assume this is one of the reasons why.
While all these examples I just listed don't heat up the body to such high extent as shown in the move Heat crash, it is still logical to assume these are the why Snorlax gets Heat Crash. Pokémon does seem to take a natural phenomenon and raise its stakes.