Das Problem liegt wohl in Windows begründet.
Unter Windows kann ich eine Seite beliebig aufbauen, d.h. ich kann kreuz und quer auf der Seite positionieren, zeichnen, Texte ausgeben und erst zum Schluss wird die Seite bestätigt.
Wenn der Drucker dieses kreuz und quer nicht unterstützt (Zeilendrucker kann selten rückwärts positionieren), kommt genau obiges Ergebnis, will heißen, die Anwendung gibt die Daten in genau der Reihenfolge aus, wie sie dann auch gedruckt werden.
Prüfe also in deiner PC-Anwendung mal genau die Reihenfolge deiner Ausgaben.

Versuche mal alternativ den AS/400-Drucker mittels NetServer freizugeben und vom PC mittels IBM AFP 300/600-Drucker den Drucker als Netzdrucker anzusprechen.
Ggf. wird durch Hosttransform das problem wieder begradigt.