For what it’s worth I looked into this issue and came to the conclusion that all of the z8000 series SoC use the same memory controller but that since the z8300 only exposes one channel (all the pins required, I checked) to the outside world it can only support half the memory. The 2GB limit, I concluded, applied only to DDR3L-RS devices and that with LPDDR3 devices you could get 4GB (the SoC supports DDR3L-RS devices with only a 16-bit data width but LPDDR3 devices with 32-bit data width).
For more information look at volume one of the datasheet, tables 58 and 59(page 106) and table 60(page 107), don’t make the mistake of confusing gigabit (Gb) and gigabyte(GB) .
Essentially this supports what @Laura said.
However, I don’t think this was an error on Intel’s part and, although I might be missing something obvious, I can’t see how Intel could have easily limited the memory supported using microcode or BIOS (the former I think is limited to the CPU cores and the later normally being in the realm of another company).