First, see http://kb.mozillazine.org/Browser.cache.memory.capacity
Next, check about:cache to see that firefox is using 2048K, the default size for 32MB of RAM. I haven't dug into the source, but somewhere, firefox is failing to detect the amount of RAM I have. This is a simple sysctl call to add, but I'm not in the habit of building firefox, so apologies for the lack of patch. Note if you decide to add this value via about:config, be sure to make it an integer. String values, even ones that look like ints, are ignored.