I find that for a given volume recipe (e.g., 5 gallons), assuming all other variables remain the same (e.g., crush, pH, mash temperature, etc.), brewhouse efficiency is inversely proportional to the intended original gravity or weight of grain used. You will not get consistent efficiency unless/until you aim to brew a consistent gravity beer.
My experiments have also proven to me, on my system, that if I mash for 20 minutes or 40 minutes or 60 minutes, it makes zero difference in efficiency. Mash time is a limitation that you might need to figure out for your own system to see what you can get away with. I think the reasons for the 60-minute rule of thumb is that 1) it will work on all systems, as well as 2) general American laziness and preference for nice round numbers, e.g., you can specify "mash for about 1 hour" versus "mash for at least 0.67 hours".
Furthermore, the reason we don't just mash for 15-20 minutes, even if conversion is "good enough" at that point, is that the sugars that have been generated through enzymatic action at that point are still fairly complex ones and need more breaking down to improve fermentability. For example, it does no good to get 90% efficiency after just 15 minutes mash time if your OG=1.060 beer can only ferment down to FG=1.030 because many of the sugars are too much for the yeast to handle. So, while you may have a good sweet wort after just a few minutes, it's not something you'll enjoy drinking at the end of fermentation. So we mash for 60 minutes (or me, I mash for 40) so that we can get down to that FG=1.015 that we want for an easier drinking brew.
I do hope Kai corrects me where I'm scientifically off base. All I can do is share what I've learned through experimentation and experience, in the hopes that it will help someone out there to be a more critical thinker such as we are.
By the way, a good pH number at mash temperature is about 5.2 to 5.5, with 5.3 being the "ideal". This can be measured with a fancy chemical gauge, or you can use the cheap pH paper. Adjustments can be made with the different brewing salts or with acidulated malt, etc. For most water and most styles, your pH will naturally fall pretty close to this range on its own without added stuff. But if your water isn't great then it might do strange things to your efficiency. Most of us don't worry too much and are actually fine in not worrying. But it is worth finding out what your typical pH is anyway, if nothing else just to rule it out as a possibility.
You can tighten your crush as much as you want, the limiting factor being the dreaded stuck sparge. I brewed for years using my friggin blender to "crush" the malt, and made many award-winners that way. The stuff you might read about tannin extraction is largely blown out of proportion and is primarily an issue for fly spargers who sparge too much, not batch spargers and certainly not for batch spargers of big beers where the pH and gravity are very unlikely to reach the limits to where tannins get pulled out.
How's that for a data dump!