Ich glaube, alle deine Fragen lassen sich da mit "Nein" beantworten.
- CPYTOIMPF bekommst du nicht threadsave
- es gibt keine SQL-Option, die Multithread verbietet
- Es gibt zwar C-Funktionen für Threads, aber in SQL Threads zu killen ist gefährlich
- Eine Alternative kannst du selber schreiben, allerdings nicht in ILE/RPG aber z.B. in Java (ist Threadsave)
- Eine andere Lösung ist eher ein CLP, dass z.B. eine QMQRY-Funktion zum Selektieren der Daten mit Outfile aufruft (QMQRY kann nur 255 Spalten!) um anschließend den CPYTOIMPF aufzurufen.
Alternativ zum QMQRY kann man auch einen RUNSQL mit einem "create table … as select … with data" zusammenklöppeln, mit einem vorherigen DLTF.#

Auch wenn nun Dieter (D*B) nun wieder die Hände über den Kopf schlägt...

Nachtrag:
Statt CLP kann man auch CLLE verwenden, die haben wieder einen Returnwert.
Alternativ gibt es noch die Aufrufkonvention SQL, dann sind NULL-Anzeiger als auch der Returnwert eigene Parameter.