Klar, da der SBMJOB das Kommando dort an den Commandprozessor übergibt und dieser Leerzeichen wieder entfernt.
Die Anzeige im Debugger mit Hochkomma zeigt nur, dass es eine Char-Variable ist.
Da du keine Hochkomma in den Inhalten hast nimm je Variable eine 2. mit 2 Bytes länger und mach einen
&NVar = '''' *cat &Var *cat ''''
Und übergebe diese an den SBMJOB.
Warum machst du für den Aufruf kein CMD? Da hast du solche Probleme absolut nicht.

Wie gesagt, Zeichenparameter müssen beim SBMJOB in Hochkomma erfolgen, da Leerzeichen bis auf den Default 32 gekürzt werden.
Dies ist schon seit V2R1 so (war mein erstes Release).