We already discussed this internally, but I'll place a comment here for other's benefit.
I think we don't need to have ON/OFF switch for this feature as it may impact on code such as query cache.
I know you added conditions to handle OFF situation, falling back on previous approach on query cache, but it seems to add a complexity in our codebase that is not needed. I think we're fine to have it always turned ON.
Let's discuss this with @doctrine/team-doctrine2 later.