Currently, if you attempt to /fix an unfixable item, like a block, it will still set the cooldown for two minutes, even though nothing happened. I think it shouldn't set the cooldown so that if you accidentally select like one slot off and try to fix your oak logs, you should be able to fix your actual tool.
There are a number of command that trigger the cool-down despite giving an alert that the command has failed. Such as /sell handall. Hopefully fixing this will fix all.
The same thing happens with the /spawner command when you simply type it out to see which mob types are available without even looking at an actual spawner.