This might not be the only reason, but if you look at the map you can see a pattern: Mesoamerica is very narrow and limited by a desert in the North. At the same time, it's relatively fertile and people would not have a lot of motivation to leave, even if they had where to go.
North America is a lot wider and also less fertile (means that people would have an incentive to migrate) - this contributed to a lower population density.