С помощью Model::updateOrCreate() вы можете работать только с одной записью. Для добавления сразу 1000 записей вам нужно использовать метод Model::insert(). В него можно передать сразу массив записей. Только учтите, что поля created_at и updated_at вам нужно будет вручную заполнять.
Если 1000 записей по размеру много получается, то можно либо увеличить лимит в настройках бд, либо записывать частями (чанками) по 100 записей, к примеру.
Если у вас в таблице есть уникальный индекс по какому-нибудь полю, то можете воспользоваться insert on duplicate key. Вот готовый пакет
https://github.com/melihovv/insert-on-duplicate-key (поддержка только mysql и sqlite).