OK, hopefully my questions "might" help:
You can't close with pg_close() so that's outta the question for pg_pconnect, but would doing this in a pg_connect() scenario work for you? (I'm referring to your first post here).
4000 sounds kinda high, though I'm not as familiar with your situation as I would be if you hired me (hint hint... just kidding). Depending on the true speed of "the site FLEW" (from first post), then would lowering this amount to say 100 across the 4 web servers and incrementally increasing it (or decreasing, if the case arises) until you reach an acceptable peformance level be doable for you?
Do all the PHP scripts access the database? if not, is moving those that don't to a different machine (God, that would be a pain) work for you?
400 queries from one user per second or all combined for 400? I guess I'm hinting at optimization of the queries more than anything, though thats old advice.
let me know how it goes, I'm really interested in the final solution.