Hard to know what to check without knowing what's causing them to not respond.
We had an issue that sounds similar, but yet totally different, where the server would crash and not clean up old ICA session numbers in the registry path HKLM:\Software\Citrix\Ica\Session. When one of these session numbers would be attempted to be used by RDP the session would fail to launch. These not being Citrix servers, obviously things will be different, but perhaps there is something similar with the RDP sessions that can be looked into. The fix for the above was a simple computer startup script to clean out invalid session numbers.
Get-ChildItem "HKLM:\Software\Citrix\Ica\Session" | Where {$_.PSChildName -match '\d+' -and $_.PSChildName -ne "-1" } | Remove-Item -Recurse
Another thought would be something like ControlUp ScoutBees to check the systems automatically like the manual process that is currently happening.