Hola muchas gracias por responder.
Si pensé pasar los datos a java, pero pensaba que había una forma en php y no quería enredar el proceso.
Y ya lo comprobé antes de consultar por aquí. El pdf se hace instantáneo como mucho tarda 1 o 2 segundos ya que para montar el pdf consulta a la BD. Eso me deja claro que el montaje del pdf y las consultas a la base de datos creo que están bien.
Y lo que creo que tarda tanto es a la hora de adjuntar el pdf en el mail, porque quite esa función y ya no era tan exagerado lo que me tardaba.
También influye que estoy con un equipo de trabajo y es una patata
Lo que recién estoy probando es no hacer pdf sino un archivo html e insertarlo en el mail, pero no se si quedara bien visualmente desde el cliente.