Dann ist das ja auch kein Wunder.
Wenn du dein CLP erstellst, wird der Code von der CCSID der Source in die CCSID deines Jobs umgewandlet, Compiletime!!!

Wenn dein Programm geladen wird, erfolgt KEINERLEI Umwandlung mehr, da der Text nun zum Code gehört.

Damit wir der Text so wie er zur Compilezeit codiert wurde an das Kommando weitergegeben und zwar unabhängig von der aktuellen Job-CCSID.
Das System geht nämlich immer davon aus, dass sprachabhängige Texte im Job grundsätzlich in der JOB-CCSID vorliegen, egal woher sie kommen (z.B. beim Lesen aus der DB wird ja umgewandelt.)

Prüfe also mal die CCSID der Source und die CCSID deines Jobs zur Umwandlungszeit.