There isn’t going to be a way to improve performance. The issue is that even if you update the entire repeater at once of you update 1 row at a time you will be generating more than one DB query for each sub field of each row being added. 1000 rows * 6 sub fields = ~12,000 db queries.
If it’s not too late you should reevaluate why you are using a repeater and if there might be a better way to accomplish the storage of this data.
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users