And in the months leading up to dropping the bomb upwards of 125,000 people were killed in the firebombing of Tokyo yet nobody talks about that. Upwards of 135,000 were killed in the firebombing of Dresden yet nobody talks about that. But everyone calls Hiroshima and Nagasaki war crimes.
A very wise man once said, "War is cruelty and you cannot refine it..." The goal of the war is to end it as soon as you can so that the killing could stop. The atomic bombs accomplished that.
Your analysis is flawed because it includes a justification that can only be applied retroactively. By your own admission, 125,000+ people were killed in the firebombing of Tokyo and 135,000+ people were killed in the firebombing of Dresden ... and yet neither one of these attacks brought about the end of the war. With that in mind, what would be the basis of anyone's determination that dropping atomic bombs on two smaller targets would do anything to bring about the end of the war any faster?
The other flaw in your argument is that it is based on the premise that the end justifies the means. One of the problems there is that this same rationale can be used to justify anything, if the intended result is achieved. By those standards, both the Khobar Towers attack in 1998 and the 9/11 attacks in 2001 must have been justified because they achieved Osama bin Laden's objective of removing U.S. military forces from Saudi Arabia.