I’ve made changes to the script I showed and wanted to share the update. This PowerShell script can be created into a scheduled task and it will watch to see if Caddy is running and if not launches. Further it checks to see if any of the config files have been recently updated and if so perform a reload. Our environment uses multiple config files that are imported from the main Caddy file.
No fix needed but hopefully this helps someone else.
This is also how I created the scheduled tasks. One runs every 6 minutes and the other runs at startup. We utlize gMSA accounts but you can change it to a normal account that has Admin access to the web server(s).