Printers don't output RTF natively. You will have to somehow get that RTF into another format, usually PCL or PostScript, to print correctly.
That being said, since you are already using perl to create the RTF, you could also use it to generate PCL or PostScript on the fly. Check out PostScript::Simple or PCL::Simple for generating these files from perl. To do tray selection, you will need to have the specific codes for your device, which should be available in the user docs or from the manufacturer.