I had the same problem..I found that it was because the CPU heatsink was full of dust. It was difficult to see, and I had to take off the CPU fan to clear it (wooden stick and vacuum cleaner).but that fixed the problem for me. Can't guarantee that this is your problem, but at least it is a fairly easy thing to check and the fix does not cost a lot!