Я не понимаю, почему использование приложения-службы должно быть проблемой. Сервисы работают постоянно, а мониторинг их можно осуществлять в режиме реального времени.
Но, если вы действительно не хотите идти по этому пути, тогда есть другие варианты. Можно запустить новый поток, используя ThreadPool или запустив новый поток вручную, и этот поток будет работать в фоновом режиме пула приложений, в котором работает ваша веб-служба.
Вы можете использовать для этого библиотеку планировщика задач. Проверьте Quartz.net для этого.
Имейте в виду, что домен приложения, в котором работает ваша веб-служба, может быть уничтожен в любое время, если IIS решит, что это необходимо, поэтому нет гарантии, что задание будет выполнено. Использование приложения-службы исправит это.