So, it does not work with p2pool. right?
Just mined all night on p2pool.
It looks like fixing the air flow/physical configuration solved the issues.
No miner or machine restarts while I was sleeping, and while it was mining p2pool.
(no p2pool blocks either, alas)
Are you using getwork or stratum on p2pool? Did you try both? Any difference between the two?