The largest ROM space the Atari 2600 could address was 4K. But a number of bank switching schemes (and some fiendishly clever ways to do it cheaply!), allowed carts up to 32K. Although really there's no limit, you can always amend the bankswitching to allow more.
This applies to all consoles, and computers. With bankswitching, possible with all ROM-based consoles, there's no upper limit. The NES called bankswitching chips "mappers", since they altered the memory map, and perhaps because they wanted to give a nicer name to an ugly technique!
Later 8-bit computers used bankswitching to allow more than 64K RAM. Or even just to allow a full 64K. For example the Commodore 64 had ROM in it's memory space, but that could be switched out, to allow a bank of RAM instead. Other computers did the same. The Spectrums with 128K also used bankswitching, as did other 8-bitters with 128K.
I think it's a shame the Spectrums with 128K didn't allow a better graphics mode, with less colour-clash, or even none. Problem would be, you'd need a game to come in a version with extra graphics for that version. Still, the extra RAM would make up for that. They could also have added a palette, and still kept compatibility. The Amstrad CPC had the same Z80 CPU as the Speccy and had much nicer graphics, so it was possible. Maybe a faster CPU, too, a Z80H could run at double the clock speed.
But anyway it didn't happen, and there's no point producing one now since the software has all already been written. Nobody would write much for an enhanced Speccy, they'd get even less people playing it, if the original machine couldn't do it.