indexInMemory -> true (if you have enough memory to store the index in memory x2, that improve repository access time, and tar optimization process)

autoOptimizeAt -> if not set, the default is applied. If it is OK, either disable it or set it to finish before or after your backups.

optimizeSleep -> 0.00001 (to speed up the tar optimization)

for Search:

search supportHighlighting -> false (if you are not using search excerpt then disable it, so that when content is indexed it doesn't store the highlighting information in the lucene index to save space)

search maxVolatileIndexSize -> 52428800 (also help to reduce the number of files as it keeps more in memory first)

search mergeFactor -> 2 (can help reduce the number of files generated in a folder)

Dcom.day.crx.persistence.tar.MinIdle=15 (can help to speed up tar optimization)

Check your JVM settings and parameters to see if you are missing any of the parameters above. And, increase JVM heap size according to the cache sizes you are using (two times for indexInMemory if you use it based on the size of the index on the file system).