Leeds climbed off the bottom of the table with an unlikely win having been on the back foot for most of the game.
Mark Viduka's penalty clinched the win following Daniel Van Buyten's dismissal after he was adjudged to have fouled Alan Smith in the penalty area.
Leeds had taken a first-half lead through Stephen McPhail's curling free-kick that deceived David James.
Just before the interval Nicolas Anelka picked up Antoine Sibierski's flick and drilled the ball past Paul Robinson.
The recent £30m takeover by a local-based consortium led by Gerald Krasner might have engendered some stability off the pitch, but with the spectre of relegation hanging over the club, the future still looks precarious on the pitch.
Emboldened by their recent win over Manchester United, City began confidently and Joey Barton's clever pass found Shaun Wright-Phillips, who was unlucky to find the side-netting with a powerful shot.
Against the run of the play Leeds took the lead with a fluke goal, with
McPhail scoring for the first time since December 1999.
23 mins: McPhail's free-kick gives Leeds the lead
44 mins: Anelka equalises with a fine finish
75 mins: Van Buyten is red-carded after his challenge on Alan Smith
76 mins: Viduka scores with the penalty
After Michael Tarnat had fouled Jermaine Pennant down the right wing, McPhail's inswinging free-kick curled past James, who managed to get a hand on the ball, only to see it go in after hitting the post.
Another free-kick, this time at the other end of the pitch, almost brought City's equaliser.
After Seth Johnson had fouled Barton, Tarnat's fierce free-kick took a deflection off Didier Domi and struck the post.
Just before the interval City deservedly drew level, when Anelka's low cross-shot found the corner of the net to give the Frenchman his 21st goal of the season.
City started the second-half in similarly sprightly fashion and Paul Robinson had to make a reaction save to beat away Sibierski's header.
Wright-Phillips then set up Sibierski but the former Lens midfielder sent his shot high over the bar.
With 15 minutes to go, Leeds once more scored against the run of the play with a controversial penalty as Van Buyten was adjugded to have fouled Smith inside the box.
Wiley decided the foul had occurred inside the penalty area and dismissed the Belgian international.
Viduka then calmly tucked the penalty away.
Sibierski went close with another header late on, but Leeds held on to secure the points.
The win pushed Leeds above Wolves and leaves Eddie Gray's side two points behind fourth-from-bottom Leicester.
Leeds: Robinson, Kelly, Caldwell, Matteo, Domi, Pennant,
McPhail, Seth Johnson, Milner, Smith, Viduka.
Subs Not Used: Carson, Harte, Radebe, Lennon, Simon Johnson.
Booked: Viduka, Seth Johnson.
Man City: James, Wright-Phillips, Dunne, Van Buyten, Distin,
Tarnat, Sibierski, Barton, Bosvelt (Jihai 82), Fowler, Anelka.
Subs Not Used: Arason, Wanchope, Macken, Sinclair.
Sent Off: Van Buyten (75).
Referee: A Wiley (Staffordshire).