From my previous experiences with attempting similar (for fun/education) and LucD corroboration in posts such as this PowerCli Script to restart vSAN mgmt and vpd services on all ESXi in VC - unfortunately this isn't in the plain realm of 'Get-VMHostService' PowerCli calls and thus you would likely need something that would SSH to each host and run the commands locally (e.g. /etc/init.d/vsanmgmtd restart).
Additionally, based on my experience troubleshooting vSAN/ESXi (for 3+ years professionally) I would always advise (if possible) integrating some form of basic checks as to whether the service was successfully stopped before being restarted or are you just dumping more non-functional processes on top of the hung ones e.g. #ps | grep <servicename> and/or note the process IDs, then stop the service and again check ps for the process IDs etc. - if all gone after stopping the service then starting the service should be fine, but if they are not killed then you have a problem and "/etc/init.d/vsanmgmtd status" will still say 'running' but that daemon may be hung and non-responsive.
Maybe try asking in PowerCli sub-community and/or moving this question there would be a good call.
Thank you Bob for your reply. I will take your recommendations on board