Il problema e' che se viene lanciata un'eccezione nel metodo LeggiFile(), tale metodo non ritorna nulla, in quanto il flusso dell'esecuzione passa all'interno del blocco catch.
Per risolvere puoi fare in due modi:

1) dentro il blocco catch aggiungi return null (oppure un valore predefinito, vedi tu)

2) dichiari y fuori dal blocco try e sposti l'istruzione return y fuori dal blocco catch.

Personalmente opterei per la seconda ipotesi, mi sembra piu' corretta ed elegante