In a large network, it is normal the SEPM can't reflect the status of the clients at 100%, you need to accept it.
If X clients are showing offline, again, it is not 100% correct but it should be so for most of them, hence triggering a service recycle for several/all clients to slightly increase that accuracy does not pay off the effort.
Furthermore, if you recycle the service on several/all clients at once, this will trigger complete SEP-to-SEPM communication for all of them (download of new content and policies and upload of client logs) causing a spike of traffic and load on your SEPM, hence low performance, something nobody is looking for.
For this reason, in big networks, SEP-to-SEPM communication must be set in pull mode and not in push mode, you are just going in the other direction with your idea of recycling the service. If you need more updated clients status just reduce the heartbeat interval (this will increase the load on the SEPM).
Said in other words, you need to accept a trade-off between accuracy and performance with the hardware you have, you can't get all.