Ist die Satzfolge wichtig?
Wenn nicht dann ändere die PF auf REUSEDLT(*YES).
Ansonsten mache regelmäßig (ggf. vor Aufruf des Programmes) einen RGZPFM.

Sporadisch wird wohl eben viel gelöscht.
Wenn dann ohne Key gelesen wird, müssen die gelöschten Sätze überlesen werden, was eben dauert.
Macht das Programm das mehrfach statt nur einmal, erklärt sich die Laufzeit.