There are a number of reasons why this is, though the main reason is due to zone size limitations. In every residential zone they have created a certain amount of space in which they can place these houses, the amount of space the zone takes up is a function of what they feel is reasonable to create something that feels like a "neighborhood" while also considering the amount of resources it would take to run that zone's instance with all of those houses plus all of the yard decorations (this is also why we got more interior placement slots for furnishing and none for external placement).

Based upon that they take their 3 plot sizes and try to effectively balance the amount of each that are available versus the cost for each size, assuming that most people will likely only be able to afford the smaller houses. I haven't done the actual ratio calculations but it would seem to me that for every 3 small houses you have 2 medium and 1 large house. This means a zone of 30 houses would end up with 15 small houses, 10 medium houses and 5 large houses (the actual amount may vary from this).

This means that, in theory, they can put more of the houses people can generally afford while still allowing for people with more funds to still get a reasonable chance at buying a house. However, as we've seen, the theory doesn't always generally hold out and then over time as people get more money there simply isn't a good way to add more housing to a map and there seems to be issues adding more zones, which is what leads to the issue you're talking about.