De acordo com o próprio autor (poettering) em este tópico: ele é proibido porque o nome do executável pode ser necessário com antecedência (por exemplo: o SELinux precisa disso).
Mas, de acordo com outro no mesmo segmento e em aquele , ele ainda funciona em algum momento -ish.
Dado que a maioria dos especificadores pode ser determinada estatisticamente com antecedência (modelo, máquina, etc.), ele deve ser suportado eventualmente.
Nesse meio tempo, uma solução é lançar um shell, conforme observado nos comentários da questão e no primeiro encadeamento:
ExecStart=/bin/sh -c "exec opt/%i/bin/service --args"
Outra solução seria invocar manualmente o interpretador ELF:
ExecStop=/lib64/ld-linux-x86-64.so.2 /usr/local/bin/%i-cli stop
(basicamente a mesma ideia de executar manualmente o /usr/bin/perl script.pl
em vez de confiar no script do script)