I can think of a few good reasons to call timeouts in the final minutes.
The first, and you see it in football too, is to “ice” a player shooting free throws or kicking a field goal.
Another reason is things change during the game. You can have the greatest plays drawn up, but you have to take into consideration who’s in foul trouble, who can afford to foul an opponent, who’s the poorest free-throw shooter to foul on the floor, who’s shooting lights out to take the final shot, how many fouls do we have to give before three throws are shot (in the Virginia game Auburn had 2 to give in the final minute). Time outs drive me crazy too sometimes, but they’re necessary.
Another reason is to rest your players, even if it’s just for 4 minutes. Some players play all 40 minutes. It amazes me how those guys can run up and down the court, play defense, block shots and sometimes land on their backs or worse—I’d be exhausted after 5 min.
I understand fully what you’re saying and even agree with some it but to me it still boils down to being prepared for various game situations whenever they may occur.
Player fitness is admirable but it is finite as you say...a coach that lets half the squad languish on the bench for whatever reason - talent, seniority, etc. - is, by definition, using half his available resources. No sympathy on that front.
Let’s stipulate that a timeout may be a chance for a breather...consecutive timeouts called by one side then the other should be banned (as they have been for consecutive timeouts by the same team). It’s a silly chess match in which team A reveals nothing, knowing that team B is going to change its strategy to match a phantom play. It’s literally back to the drawing board.
By the same token, timeouts called on either side of a free throw are surplus to requirements from a fitness standpoint. Last but certainly not least are the lengthy (3-4 min) media timeouts that occur after the 12 min mark and every 4 min thereafter.