Yes, I agree - level-88s are definitely not the same thing. I did raise an RPI for the issue with functions that return a pic-1 item, but for now the only solution I know of is the one you had in your original post, where you have the function return a pic-x item and test for it explicitly in the condition.
I have to say - most of the COBOL I write these days is Managed OO COBOL with the new simplified syntax, and when I go back to old procedural COBOL the difference is stark. But of course most projects can't simply switch to using managed code.