It was indeed my backup sw (WD anywhere backup). After disabling it, the test script runs to 10000 loops without errors.
Followup question: why does this happen and is there an easy workaround (apart from disabling the backup sw)? I mean, I don't think I've had problems with deleting or modifying files, only renaming... And I don't think I've had issues outside of perl.