"Bad Pool Header" is a generic memory issue, it could be any number of things from drivers, a bad system file, a busted RAM controller in the CPU... You get the idea.
First thing I'd do is run a RAM check, especially if you're using generic RAM since quality control on them can be pretty bad.
Give this a run but be aware it'll take a long time with 16GB (grab an ISO and either bung it on a disk or USB stick)
You could also hit the windows event viewer after it happens, there'll be a log with more details if it's not a hardware issue.
Also if your heatsink is crap do like they said and get it a better cooler ASAP.