To talk for sure whether it is hardware or software issue you should have a bit more things checked. The pure experiment would be ideally to resurrect your Windows and check whether it overheats or doesn't.
As you said you got the Windows issue with driver, it stopped working/booting, and then you ran Ubuntu, well, it doesn't exclude that your machine had been already overheating somehow by that time. Anyway, to exclude potential fault of Ubuntu and its particular kernel you should run something else on your laptop. You can try Live CD. In there you can select "Try", not "Install". Or revive your Windows again to compare. You will need to repair a boot however if you do this.
To dig deeper into diagnosing of this issue, and namely, to define whether it is software or hardware you can install some OS( say previous Ubuntu version, or Windows) on the new partition of your local drive, or to external drive or on USB flash.
Moreover, you are recommended to install CPU temperature monitor, for examplepsensor
(it shows hardware sensors and fan speeds)
sudo apt-get install psensor
to check your CPU temperature. Other wise you will need to go to BIOS "health" monitor to see it every time the system crashes when it is hot. You need the value to understand what happens.
You will probably find that your CPU overheats and goes up to 100C+. If it happens on all OS/kernel's combinations, this means it is a hardware issue. This may involve a number of things, from fan getting bad, dust, dirt and even to to the CPU degrading.
Anyway you will probably find usefull indicator-cpufreq
program, which allows you to scale CPU frequency - to set it down (list is offered in there).
sudo apt-get install indicator-cpufreq