The lack of this feature does always bring me back to Z2M. With over 100 Zigbee devices, it is crucial to have an overview of failing / missing devices.
I moved away from ZHA to all Zigbee2MQTT a while back, but when I was focused on ZHA I tried to find some ways to get a better ‘real time’ look at devices. The code I wrote at link below might give you some ideas. Unfortunately (or fortunately depending on your needs) Zigbee seems to focus on low power over communications frequency by devices, this both for battery and mains it seems, however seems rooted on the battery based devices model. So depending on how often a devices chooses to ‘check in’ is limiting factor to a full view of your network. Zigbee2MQTT does seems to do a better job of tracking last seen, however it too is limited by how often a device ‘checks in’.