Намерих отговора.
За параметъра OUT декларирах размера до max на varchar - 32767 и той започна да работи.
За опростяване, съхранената процедура връща параметър OUT от тип VARCHAR2. Но за да консумирам този изход от .NET, предавах VARCHAR2 без никакъв размер. Така че буферното пространство, разпределено за получаване на върнатата стойност, беше 0 байта. Когато proc върне стойността, по-голяма от разпределения буфер, който е 0 байта, се получава грешка.
Така че посочих максимума на VARCHAR2-32767 в C# кода и той започна да работи :).