Можно ли в шаблон Word подставлять данные из Python?
Можно
https://docxtpl.readthedocs.io/en/latest/
https://python-docx.readthedocs.io/en/latest/
https://michalzalecki.com/converting-docx-to-pdf-u...
Вместо Word (.doc) можно использовать LibreOffice (.odt).Правишь заготовку, а потом скриптом ODT->PDF или ODT->DOC.
P.S. Кстати, и .odt, и .docx - это сжатые zip-ом текстовые xml-файлы. Поэтому многие советуют сначала распаковать "документ", заменить в одном из полученных xml слова-маркеры, а потом обратно запаковать.