a mio avviso dovresti riprogettare la funzione perchè la sua natura non è ricorsiva.
Per natura ricorsiva intendo una funzione del tipo
somma(n)=n+somma(n-1).
Se riesci a scrivere qualcosa del genere allora la tua funzione ha natura ricorsiva e la puoi implementare, se lo desideri e lo ritieni opportuno, in maniera ricorsiva.
Nel tuo caso ti consiglio di scrivere due funzioni, una che ha lo scopo di aprire il file principale, che contiene l'elenco dei tuoi file, e la seconda che legge i singoli file e li analizza.
ciao
sergio