one thing you are missing, you use x32 with a 64 bit kernel, so the kernel doesn't have memory limits, your only limit is 4G of address space per process (and the kernel needs almost none of that)
As a result, any system up to 4G is perfectly happy as x32, and if the system is doing more than one thing, you could easily get 16G or larger systems without needing 64 bit binaries.
And if you are doing VMs, this is the size of the VM, not the size of the overall system.