The problem is, my CPU temp is reportedly (speedfan, asus utils and everest) sitting around 50C-60C virtually idle! The core temps though are about 20C-30C, going to about 40C under load, which is good.
Which do I believe here, should I try re-seating the cooler again (*sigh* thats a complete rebuild) or just leave it.
Let's use some basic logic here: What is the hottest part of the CPU? The cores. Therefore is it possible for the temperature external to the cores to be far hotter (or even as hot as) the cores themselves? No. Therefore one of them is wrong, and it's likely to be the CPU temp. Remember that CPU and core temperatures are dependent on ambient as well, and you haven't told us your ambient.
I agree with everything you've said randomizer, which is why I'm a bit baffled. I've seen the overall CPU temp be close to the core temps before, but never (as in my case) as much as 30C warmer, it just makes no sense.
Well as you will read in that guide I linked to, the CPU temp is calibrated by the BIOS, and if the calibrations are very wrong then you'll see strange things like this happen.
Maybe he's using Real Temp to lower his core temps. It's quite easy to do as I do it myself all the time. How you ask? Simple, under settings, just type in a lower value in SetTJMax!
Presto! Real Temp reports lower core temps!