Чтобы было быстрее работайте с файлами xl/worksheets/sheet?.xml (внутри zip архива - xlsx файла) напрямую! либо как с XML, либо как с текстом поиск/замена (через регулярки например), хотя... если это чистый файл с нуля, то проще и быстрее генерировать эти файлы с нуля как текст, в этом файле данные в разделе sheetData, см. пример:
<sheetData>
<row r="1">
<c r="A1" t="str">
<v>Иванов</v>
</c>
<c r="B1" t="str">
<v>Петров</v>
</c>
<c r="С1" t="str">
<v>Сидоров</v>
</c>
...
</row>
</sheetData>
PS: да сохраните любой эксельник в xlsx переименуйте в zip и посмотрите, поймете.
Либо переходите на связку ... например на
Go + пакет
Excelize и либо на нем микросервис сделать и соответственно работать, либо бинарник для cmdline и соответственно вызывать его из PHP