90 degrees Celsius? That is very hot. There's another post I found which indicates temperatures for a cpu similar to yours (an i5 2500k), which is interesting from a comparison point of view: http://www.tomshardware.com/forum/320336-28-2500k-temp
One thing that I would double check, is to make sure that the heatsink is properly attached/mounted to your motherboard, as I know (from experience) that that can make a big difference. If possible, try to look underneath your motherboard and check to make sure that all four of the push pins/screws are showing underneath.
And also make sure that you have thermal grease on the cpu/heatsink.
I had a very similar problem with a computer I had a few years back- it was freezing in pretty much the same way as yours. It turned out to be a combination of the fan on my graphics card had packed up, causing the graphics card to overheat, and the cpu fan on the heatsink was packing up - it still looked like it was running properly, but when I went into bios, it showed that the rpm was no where near as high as it should've been. It then completely packed up. Once I had replaced both fans, the freezing problem stopped.
I hope this helps