Olá! Primeiramente agradeço pelo convite para que eu participe deste projeto. Analisando o modelo PHP e o docx, a solução que proponho já está praticamente implementada. Arquivos docx são nada mais do que uma estrutura de diretórios em um arquivo zip. Um dos arquivos contidos no docx é o conteúdo de seu texto em formato xml. Portanto, para solucionar seu problema, basta descompactar o arquivo (como se fosse um zip), fazer a substituição no arquivo certo e recompactar. Cabe salientar dois pontos:
1. As variáveis devem ter formatação igual, para preservar a estrutura xml.
2. Cada registro do banco de dados gerará um arquivo docx, diferentemente de uma mala direta, por exemplo, onde você poderia gerar múltiplas páginas.
Se precisar da minha ajuda, conte comigo.
Um abraço,
Alexandre.