How can I write a launchd service that will actually stop the service?
Get rid of the -d 60 arguments and use the launchd key StartInterval instead. Also make sure the process does not daemonize itself. According to the monit man page this is accomplished by using the -I option.