A screamer from Emmanuel Agyemang-Badu gave Ghana the lead in the 26th minute, and although Guinea levelled on the stroke of half-time through a fortuitous strike from Abdoul Camara, they could not find the goal they needed to go through.
Their challenge was only made harder by the 70th-minute dismissal of Mamadou Bah.
Guinea, needing a victory to have any chance of progression, started in determined fashion with Ismael Bangoura having early sights of goal but unable to trouble Adam Larsen.
They wanted a penalty in the 11th minute when Larsen came to take the ball at the feet of Ibrahima Traore, but the referee said the goalkeeper took the ball cleanly while replays suggested otherwise.
Guinea had the ball in the net in the 25th minute when Traore fired home from a through ball from Pascal Feindouno, but he was correctly called offside.
It was just moments later when Ghana, second best to this point, took the lead with a superb goal from Badu, who flicked the ball up before lashing the ball home from the outside of the area.
The goal rather dimmed Guinea spirits, but Bangoura went close in the 37th minute with a shot Larsen had to palm away for a corner.
Samuel Inkoom went close to a second for Ghana as he lashed just inches wide, while at the other end Camara got himself into a fine position only to scuff his shot.
Asamoah Gyan fired into the side-netting for Ghana, and then moments later Camara made up for his earlier miss when his looping cross from the left wrong-footed the goalkeeper and found the far corner of the net.
Larsen denied Bangoura early in the second half but chances were in short supply, and Guinea's problems grew when Bah earned a second yellow card in quick succession in the 70th minute.
With news coming through that Mali were ahead in the other game, making this result academic, the pace slowed.
Prince Tagoe had a late chance for Ghana, but they had already done enough.
Any reproduction, publication or redistribution of this material without the written agreement of 365 Media Group is strictly forbidden.