Two turns in a row aren't critical in this situation, because after the centaur's attack, there will be a response, and the halberdier will also receive defense!! Don't argue, just check!!! Why argue if you don't know?
Indeed, go ahead and check.
Centaur moves, halberdier defends. Centaur attacks, halberdier defends. Centaur attacks, halberdier defends. Centaur waits, halberdier defends. Centaur attacks 2 times. Total of 4 attacks, total average damage - 10, halberdier dies, managing to deal 7.5 average damage, 3 attacks, because he doesn't survive until the last counterattack. This outcome in terms of the number of attacks (without morale) can always be achieved, therefore the centaur will win in more than half of the cases. By the way, the halberd's 3 (taking into account the Defense order, so 2) defense advantage doesn't play a role in this battle, because Heroes 3 doesn't work with fractional numbers, discarding the fractional part.