@warkolm in this post already speak about the number of shards and heap usage - Large heap usage with each node - #8 by javadevmtl
That's the problem then. Each shard is a lucene instance, it requires resources to maintain.
Reduce that to a reasonable number and you should see better resources usage.