Предполагая, что CGI всегда вызывается с одним и тем же списком библиотек ...
И что * SRVPGM не был удален (и впоследствии воссоздан) при запуске программы CGI ...
Тогда такие странные ошибки во время выполнения могут быть вызваны несовпадением параметров, приводящим к повреждению памяти.
Проверьте пармы, используемые для вызова любых программ или процедур, а не только процедур MYSRVPGM.
В частности, если у вас есть локальные дубликаты прототипов, то есть вместо / COPY'а пиара PR в вызывающем и вызываемом объектах, вы кодировали PR отдельно как в вызывающем, так и в вызываемом абоненте.
Также в любом месте, где вы используете не прототипный вызов.