Offline is reported from the cloud itself, so when Homey is not even connected to internet, it will be reported as offline.
Get the IP of Homey (you shall have two, one for Wifi and one of Ethernet) and keep pinging those… if you will lose the ping, it means that not only Cloud connection is gone but also local connectivity. Which is very strange, considering Homey is still operational. You can maybe also setup local access to Homey to exclude any cloud part, in case the ping will be still responding.
No idea, it shall be either all or none, not only partiall… that could be indicating also some other, possibly HW related problem.
Well, you can create flows with triggers and write it to the Timeline = so even after restart, you shall see the events. You can even automate the restarts, eg. :
Based on those triggers, you can eg. force Homey to restart (eg. having controlled restart vs cold-uncrontrolled reboot)…
Or you can simply check the device timeline, it will be written there without any triggers…
eg.

Also since you have now added sysinternal devices, track-share the insights after restart or when you will loose connectivity…eg. check for temperature, free ram etc.

