Ich kann da nicht erkennen, dass Arrays beim Like erlaubt wären:
When the LIKE keyword is specified, the item being defined takes on the length
and the data format of the item specified as the parameter. Standalone fields,
prototypes, parameters, and data-structure subfields may be defined using this
keyword. The parameter of LIKE can be a standalone field, a data structure, a data
structure subfield, a parameter in a procedure interface definition, or a prototype
name.
The data type entry (position 40) must be blank.

Wenn du also Like verwendest musst du hier (wie der Fehler ja sagt) einen Index angeben, also "like($arr(1))".
Willst du ein Array komplett als Parameter so stell das Array in eine DS und definiere als Parameter "likeds(MyArrDs)".

Eventuell wirds klarer wenn du dein "fixed"-RPGLE mal postest um zu prüfen, warum das funktioniert hat.