В свое время была похожая задача - подошел только odfpy. Работать с ним сложно, но возможно. Если нет требования держать шаблоны в odf - возьмите reportlab, ничего лучше для генерации pdf на питоне нет.
Насколько я понял, в reportlab можно взять готовый "шаблон" и в нужные места вписать нужные данные? если так, то есть ли там возможность по каким-либо меткам или плейсхолдерам расставить значения?
Основное применение - это именно динамическая генерация всего pdf. Шаблон страницы целиком задается python-кодом, то есть проблем с изменением конкретных мест в документе нет никаких. Я его в свое время использовал, потому что нужен был pdf нестандартного размера, но он вполне подходит и для генерации стандартных pdf формата A4 - www.programcreek.com/python/example/51068/reportla...