Heb het bedacht. Dit is geen bug met PHP (hoewel het dat wel was) - het is een bug in sommige versies van phpmyadmin. Dezelfde bug verschijnt met tussenpozen en wordt vervolgens opgelost in verschillende subversies (zie hierboven):
#1312 - PROCEDURE [name] can't return a result set in the given context
Dit gedrag lijkt beperkt tot SELECT-instructies binnen opgeslagen procedures in phpmyadmin .
Het gebruik van een client zoals MySQL Workbench omzeilt het probleem (of je kunt phpmyadmin upgraden, maar dat is lastig als je op een gedeelde server zit zoals ik).
Hoe dan ook, iedereen bedankt voor je hulp.