(How) can I add a footer fixed to the page of a message template for printing a pdf?
All you need to do is create a table in the first place - Add header in the top row and calculate the number of rows can fit in the page and add the footer to the bottom of the table 

Now when ever you add content to the page make sure you add to the table row by row and any empty row should be filled with &amp;nbsp; 

By doing this you are always setting a set row and the footer remains in the same place

you need to create an extension for the same 

I guess this helps !!!

If my suggestion is bit tricky - just wait for others to reply 

Thanks