Akhlidin Israilov fired in the opener after 42 minutes but saw that goal cancelled out in a nightmare moment for keeper Pavel Matiash, who pushed the ball into his own net five minutes into the second half.
Matiash's poor judgement then opened the door for substitute Yu Dabao to net the winner, sending China top of Group C ahead of the match between top seeds South Korea and Philippines later on Monday.
Kyrgyzstan showed more attacking intent in the first half and were rewarded three minutes from the break, when Israilov netted an impressive goal - Mirlan Murzaev heading on a throw-in for the midfielder to volley home from the edge of the box.
Vitalij Lux should have doubled the lead two minutes later but scuffed his shot after being sent through by Farhat Musabekov.
Wu Lei scooped over with an early chance at an equaliser in the second half, yet fortune was on China's side when the leveller eventually arrived.
Valeri Kichin's attempted headed clearance from a corner went straight up and Matiash, in trying to tip the ball over his crossbar, pushed it into his own net off the woodwork.
Wu Xi then headed narrowly over as Marcello Lippi's side looked to take control, before Wu Lei repeated the trick from an inviting Liu Yang cross.
The winner eventually arrived 12 minutes from time, as Matiash recklessly rushed off his line, allowing Yu to knock the ball around him and slot into an empty net.
Iran 5-0 Yemen
South Korea 1-0 Philippines