Im Endeffekt laboriert man hier an einem Problem das statistisch gesehen nie wieder vorkommen wird, aber was ist schon Statistik.

Da man nicht weiß wie CHKOBJ auf defekte Objekte reagiert bliebe ggf. eine andere Lösung:

Ein CLP, dass nur folgenden Befehl ausführt:
RCVMSG MSGQ(MYLIB/MYMSGQ)
WAIT(0)
RMV(*NO)

Dieses CLP wird submittet.
Der SBMJOB übergibt im Joblog die genaue Job-Id, die per RCVMSG ausgelesen werden kann.
Per JOBAPI wird geprüft, ob der Job beendet wurde. Ist dies der Fall, scheint die MSGQ ja i.O. zu sein, da der RCVMSG nicht hängen blieb.
Es muss natürlich sichergestellt werden, dass der Job auch sofort loslegt.
Zwischen SBMJOB und Job-API müsste ein DLYJOB(1) eigentlich reichen.