Вы можете сделать это с Linked Server или заданием SSIS, запущенным на агенте SQL, что, возможно, было бы проще, но ... для решения самого вопроса:
Вы упоминаете, что пытались использовать разные учетные записи для запуска службы - предоставили ли вы какой-либо из этих учетных записей соответствующие права на целевую базу данных, чтобы служба могла обновлять данные. Имеют ли они также права в вашей исходной (Access) базе данных на ее чтение.
Проверяли ли вы Журналы событий на сервере и журналы SQL Server, чтобы найти сообщения об ошибках, неудачных входах в систему и т. Д.?
Вы можете подключить отладчик к работающему сервису, чтобы попытаться определить проблему во время его работы, или, в качестве альтернативы, вам нужно написать какие-то операторы журналирования, чтобы вы могли определить, где ваш код работает до того, как он выйдет из строя, и записать в журнал сообщения об ошибках, так что дайте вам кое-что для работы.