I think it's more of a choice by design, rather than there being a technical limitation, at least these days. Originally it WOULD have been a technical limitation that kept the games to one save file in all likelihood, given the limited storage available on cartridges. But these days, plenty of games far bigger and more complicated than Pokemon games - which also have their save data stored on the cartridge rather than an external SD card or system memory, before anyone throws that at me - allow for multiple saves, so that excuse is well and truly out.
The cynical prick in me says it's because Nintendo wants you to buy more copies of the game to trade with other people. They approach business with the mindset of a toymaker, not an electronics developer, and you don't share your toys with other people, do you? If you want the same toy, you have to go out and buy your own. One of the cornerstones of Pokemon has always been trading as well, and having multiple save files goes a long way towards defeating that point.
But I suspect that stopping you from trading with yourself and hoarding rare items/Pokemon etc. is something to do with it, or was the reason for it being kept as a thing when it was technically possible to have multiple save files. After all, it'd severely de-value your Legendaries and Master Balls etc. if you could obtain multiple copies within the same game, wouldn't it? This would have made sense back in the day of the third generation, when online trading wasn't a thing. Now? Well, Nintendo are nothing if not married to antiquated tradition. That's...literally the only reason I can think of.