Fazla Laravel bilgim yok, ama gördüğüm kadarıyla; verileri normal çekmeye çalışırsanız, tümünü memory'e yükler ve şişirir.
Eloquent'de chunk methodu varmış bu, verileri parça parça çekmek için. Böyle olursa, isterse 1 milyon kayıt olsun, memory'de hep sizin belirlediğiniz kadar kayıt olur, memory yüzünden patlamazsınız(tabi verilere başka referans yoksa, Doctrine'de Identity Map vardı, Laravel'de aradım bulamadım, eğer Laravel'dede identity map'e benzer bir yapı varsa, ondanda silmeniz gerekiyor veriyi).
Kullandığınız Excel eklentisi PHPExcel kullanıyor, oda büyük verilerde sıkıntı çıkartabiliyor.
Şu kütüphaneyi kullanmanızı öneririm.