Всё, большое спасибо, я понял.
В документации ob_flush в том заплюсованном комментарии flush() вызывается перед ob_flush(), а нужно наоборот.
Короче ob_flush(); flush(); делают что я и хотел.
Но когда я пытаюсь сделать что-то типа такого же, то у меня ничего не работает - ждёт 5 секунд и отправляет всё вместе...
В моём коде цикл for не используется. Это может быть причиной?
scriptElem.onload = () => {функция_из_подключенного_скрипта()}