There is no problem with free Linux distros handling > 4 GB of memory. The problem is that 32 hardware must make use of some less than efficient mechanisms to be able to address the memory.
The theshold for using PAE is actually far lower than 4GB. 4GB is the total memory address space -- split that in half for 2GB for userspace, 2GB for kernel. The OS cache resides in kernel space -- after you take alway the memory allocation for devices, you're left with a window of roughly 900MB.
Since the optimal state is to allocate a small amount of memory to Postgres and leave a huge chunk to the OS cache, this means you are already hitting the PAE penalty at 1.5GB of memory.
---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings