Cape Verde's Garry Rodrigues scored twice as Cape Verde won 2-1 away in South Africa to deny Bafana Bafana the chance to take top spot in Group D.
Stuart Baxter's side threatened a late comeback after Andile Jali halved the deficit, but they were left to rue an international break in which the A team suffered consecutive back-to-back defeats for the first time since 2009, shredding their hopes of reaching Russia.
The loss leaves South Africa bottom of Group D after taking four points from their opening four fixtures, although they remain two points off leaders Burkina Faso following their home draw against Senegal in Ouagadougou.
Cape Verde, in second, trail Burkina Faso on goal difference, with Senegal on five points in third.
Baxter refreshed the side that were defeated 2-0 in Praia on Friday, introducing Morgan Gould for the suspended Eric Mathoho, bringing Hlompho Kekana into the midfield, and replacing Ronwen Williams with Wayne Sandilands between the sticks among five chances.
Bafana started strongly, with Tokelo Rantie and Bradley Grobler missing first-half efforts, but the visitors weathered the storm and took the lead in the 52nd minute when Rodrigues beat Sandilands with a magnificent free kick from 30 metres that nestled in the far corner of the home goal.
The hosts nearly responded through Grobelar's header, but Rodrigues added his second in the 67th minute with another touch of class, as he was afforded too much space on the edge of the area and sent a thunderous right-footed shot past Sandilands.
Baxter introduced Jali, Lebogang Manyama and the popular Percy Tau in search of goals, and it was the first of this trio who reduced arrears, beating Vozinha in the 89th minute.