I only get this once in a while so Linux doesn't seem like a solution I would want.
Given its frequency is more random and infrequent it could also be RAM related. Id run memtest86 on this system and let it run for 4 or 5 full tests to make sure memory is all healthy. On laptops they share memory usually with system memory and so a RAM stick acting up can cause GPU issues too.
If it were a GPU that is failing I would expect it to be more frequent and able to be triggered by specific load conditions or heat related etc to where you can stress it with a game etc and cause it to act up.
RAM issues can cause sporadic issues as a memory address gets flakey or isnt used by GPU and then gets used as free memory address becomes available in the pool of memory addresses for the RAM.
Additionally running crystaldiskinfo to check to make sure hard drive is healthy might be a good test too as for swap space (virtual memory) issues as a result of a troubled hard drive can cause system instability at times randomly. If the drive shows green good with crystaldiskinfo then drive is not a problem but if it pops up with a warning then check further as to why its flagged as a troubled drive.