Would not you lint only on files that changed?
I'm not sure if Eslint does this either, but indices or some incremental static analysis sounds like it could help the linter minimize rechecks or use previous state.
I'm not sure how well this could scale across (600- 1000?) different lints though. I should look into static analysis a bit more.
If a file has been linted, is unchanged since it was linted, there's literally no need to lint it again. Much like if you only need to process one record, you don't query the whole table to get the record.