there is a flaw in your thinking.
if you're money gets reduced right when you click there is still a chance your constructor gets destroyed or disabled on the way to his building position.
so in that case the game has to refund you which I think is currently not what the engine can do without some changes to the code.
i like the way it currently is, it also remembers your order so as soon as you got the cash your base gets build even if it takes 2 hours 