Se arregló el error de carga, estaba leyendo el segundo valor del archivo primero y se desfasaba toda la creación de las listas encadenadas.
Probar por favor, no estoy contento con el uso del while dato != null porque... nunca volvemos a usar dato en todo el while...