A DTD is not an XML file; FOP has no use for that. How do you think a DTD helps with a document conversion?
But with the Apache FOP, I need an xsl which I do not have
Correct, you'd need to create the XSL-FO stylesheet, but that's most likely less work than to use either the OO Java API, or the iText API.