I want to point out that two issues should be separated when talking about what students know:
Being able to consciously and correctly state some fact. (E.g. the formula for the square of a binom or the correct verb form after "if".)
Being able to apply the fact routinely, automatically and with high reliability.
None of them implies the other. Native speakers correctly apply grammatical "rules" that they have never heard of to invented words because the brain can extract rules from a huge number of examples. People can memorize the meaning of the letters of another alphabet (Russian, Greek, ...) in a very short time, but this does not enable them to read known words in the other alphabet with reasonable speed.
I certainly agree with teaching students, meaning, understanding and context, but if you want them to calculate efficiently and reliably, it cannot be avoided that they do a certain significant amount of computations themselves to give their brains a chance to automatize the routine. (And if they do not care about the results of the computations, it will take much, much longer.)
The mere fact that people over-apply patterns to new situations is not something that I find disturbing at all. It is exactly what I want students to do when I introduce matrix exponentials. The goal is to be able to switch between routine mode and reflection mode.