I see...
Well, hoping google improves the framework in the next version, i'll try to work around it by reducing the number of invocations.
I will try saving the list in KeyValueStore, and request a listfile invocation to update only if i suspect something changed, or by user request.
Fun fact: on 2 motorola g30, same model, no sd, same android version, similar number of files, there is a 40% difference in indexing time! Something weird is definitely going on here.