Based on your symptoms, the problem affected the built-in display while the Mac itself continued functioning and the external monitor worked normally.
The fact that the display temporarily returned after the macOS update and then remained stable after the reset suggests that software or system configuration could have been involved, but it does not prove that the display driver was corrupted.
Likewise, there is no evidence that deleting caches every few days caused or fixed the problem.
I would avoid routinely deleting macOS caches; macOS manages them itself.
The Apple Authorized Service Centre's recommendation to replace the panel also cannot be ruled out.
An intermittent hardware problem could potentially behave normally for a period of time, so the fact that the reset restored the display does not conclusively prove that the panel is healthy.
For now, since the Mac has been working normally for several days, I would simply continue using it and keep regular backups.
If the black screen returns, the most useful thing would be to check whether the internal display works in Startup Options or macOS Recovery.
On an M1 Mac, shut it down ( Do Not do a Restart) , then hold the power button until "Loading startup options" appears.
From there you can enter Recovery or run Apple Diagnostics.
Apple documents these procedures here: Start up from macOS Recovery and Use Apple Diagnostics to test your Mac.
Apple also specifically provides troubleshooting steps for a Mac that starts to a black, grey, or blue blank screen: If your Mac starts up to a blank screen.
If the problem returns but the display works in Startup Options/Recovery, that would be useful evidence when discussing the issue with Apple. If it is already blank at that stage, Apple recommends service if the problem persists. (Apple Support)
So, at this point, the most accurate conclusion is: your reset appears to have resolved the problem, but there is not t enough evidence to say whether the original cause was software or hardware, and there is no good evidence that your cache deletion was related to it.