Usually when a computer turns off and has to be left for a while before it will turn on again it is because it is overheating.
Does your BIOS have an option to let you check the CPU temperature?
Does the machine switch off after a while if you leave it in just BIOS with no peripherals attached? If it does, there's definitely a hardware or overheating problem. If it doesn't, it doesn't really prove anything and could still be due to overheating.
From what I've seen, laptops can suck in a lot of dust because of where they are often used (laps and bedrooms, on top of duvets) and this leads to the problems you described as the fan and ducts get clogged up. Sometimes, just a good clean out is needed, but other times the CPU has to be reseated.