I want to know about read performance between the following 2
Creating monthly indices on my own and pointing them to an alias
Creating monthly indices using ILM
Will they have any difference in search performance for the same query?
My doubt is, by creating indexes through ILM, do shards hold some optimized data to figure out whether they have the required documents or they will both act in same way?
I'm not sure how this question is different from your previous one.
ILM has nothing to do with search performance, it is used to manage the lifecycle of your index by moving it between nodes with different tiers (hot, warm, cold) or delete it after some time.
You can use ILM to control the creation of indices, for example, create a new index after 30 days or after it reach some size, this is called rollover.
When you use ILM with a rollover it uses an alias and you will search against this alias, there is no difference between an manually created index and an index created by a rollover, just the naming is different.
I'm not sure what is the issue you are trying to solve.