As we see, he doesn't have a decisive advantage - time is on Kirk's side both in terms of the space battle, and in terms of the overall assassination plot. If Chang knows* there's going to be an assassination down there, he should be desperate to stop Kirk from reaching the planet. Yet once the Excelsior (or any other ship) arrives, Chang will have to divide his fire, which lets Kirk get to transporter range and spoil everything (as we see, he has plenty of time as is).
That Chang doesn't immediately blast Kirk to bits must be either because he cannot, or because he's an idiot. The character is much more fun when not idiotic, is all.
Timo Saloniemi
* The assassination is going to implicate the Klingons. Should Chang really side with those responsible? He may not care, as long as the war gets going. Or he may not know. Heck, for all we know, he has a parallel scheme ongoing, with a Klingon masquerading as a human ready to stab the Chancellorette in the back at a suitable moment...