Si estuviera en esa situación, estaría mirando una base de datos que puede almacenar todos los datos en un solo archivo con un índice compacto basado en desplazamiento, en lugar de archivos separados. Tal vez una base de datos que tenga un controlador FUSE disponible para interactuar con él como archivos cuando sea necesario, sin que en realidad todos sean archivos separados.
Alternativamente, podría mirar, por ejemplo, el percentil 60-70 de los tamaños de archivo, y tratar de ajustar ese tamaño de archivo directamente en los nodos del árbol del sistema de archivos, en lugar de como bloques separados en el disco. Almacenar 10k en cada nodo es probablemente una gran pregunta, pero si pudiera obtener el 60% -70% de los archivos allí, probablemente sería una gran victoria.
Solo ciertos sistemas de archivos pueden hacer eso (reiserfs es uno), y supongo que todo depende del tamaño de ese percentil, si encajará en el árbol. Es posible que pueda sintonizarlo. Supongo que intenta encajar el resto en un bloque.
Y no te preocupes por las revistas; tienen un límite de tamaño superior de todos modos.