Ok, więc po dłuższym kopaniu znalazłem rozwiązanie.
Oryginalny kod używał ExecuteReader. Zmieniłem go na uruchamianie ExecuteNonQuery.
Przekazuję te same parametry i typy, co zrobiłem (2 wejścia, 2 wyjścia, z których jedno jest ciągiem, a jedno refcursor).
Po uruchomieniu ExecuteNonQuery widzę wartość trzeciego parametru (ciągu). następnie robię co następuje:
OracleDataReader dr = ((OracleRefCursor)pRefcursor.Value).GetDataReader();
Wtedy mogę zrobić moje zwykłe pętle z dr! Szczęśliwe dni!