Per prima cosa grazie a tutti, a titolo di feedback vi dico che on-line 800K sono andati lisci, mentre un paio di files che superavano 1Mb mi generano l'errore.
Per questo lavoro sono in hosting esterno quindi farò delle prove, su questo server.

Quasi sicuramente il problema è la dimensione del file che devi caricare.
Dovrebbe dipendere dal parametro "max_allowed_packet" del server, che di default mi pare sia 1MB. Se vai oltre succede quello. Quindi o spezzi l'input, o riavvii il server cambiando quel parametro.
Dovrebbe essere nel php.ini? ho controllato ma non lo trovo.

Questo errore si verifica quando viene persa la connessione a MySQL, generalmente effettuando operazioni che sfruttano per parecchio tempo la stessa connessione. Per evitarlo la prima cosa che puoi fare è verificare dopo quanto tempo compare l'errore, verificare il parametro che imposta il timeout di MySQL e capire se puoi fare qualcosa per ridurre i tempi di elaborazione, qualora fossero molto elevati. Tuttavia la soluzione reale è quella di intercettare l'errore e ripristinare la connessione caduta.
Faccio delle prove, il parametro è questo mysql.connect_timeout?