Огромное спасибо Azure и renzrv за помощь в решении проблемы!
Использовал второй вариант скрипта (от renzrv), потому что всё необходимое содержится в одном файле.
Автозагрузку сделал добавив в crontab :
@reboot root /path/to/script.sh
Запустил, попробовал пару раз перезагружать модем - IP меняется, служба перезапускается.
Оставил работать, буду наблюдать, но пока, вроде, всё прекрасно!