Para que un servicio funcione con el móvil en reposo tienes hacer que funcione en modo PARTIAL_WAKE_LOCK, la aplicación requerirá permiso de WakeLock.
Puedes programar directamente la adquisición y liberación del WakeLock, pero siendo un servicio puedes iniciarlo mediante startWakefulService (en lugar de startService) y funcionará en modo WakeLock hasta que termine. Lo que no se es si al relanzarlo el sistema (si es START_STICKY) se volverá a lanzar en modo WakeLock o no.
También tienes que tener en cuenta que el móvil realmente NUNCA entrará en reposo mientras el servicio esté funcionando, lo único es que la pantalla estará apagada, pero el procesador seguirá funcionando como si la pantalla estuviese encendida. Lo que quiero decir con esto es que la batería durará bastante menos si el servicio está siempre en funcionamiento.