The South Africans dominated the first half, but could not get going after the break as the islanders comfortably held on for the draw.
That means the World Cup hosts have now scored just six goals in their last 12 internationals.
Bafana had the better of the opening exchanges, with Benni McCarthy particularly influential. He combined with Siphiwe Tshabalala to play in Katlego Mphela, but his shot from the edge of the area was sliced wide.
On 11 minutes it was McCarthy and Mphela again – this time a neat one-two which saw Mphela one-on-one with goalkeeper Dwayne Miller, but he took a touch too many and his effort was saved.
Against the run of play, Jamaica almost took the lead when a cross from the left clipped off Aaron Mokoena’s boot, but Rowen Fernandez was alert to the danger.
A couple of minutes later, however, Fernandez was beaten after a great run by Jason Morrison left a lot of defenders in his wake. Fortunately Mokoena was back to clear the ball off the line.
McCarthy was looking lively and fired in a powerful free-kick which was well saved by Miller. Three minutes later Mokoena had a great chance at the back-post, but his powerful header was straight at the keeper.
Jamaica then almost snatched the half-time lead, but Demar Phillips’ powerful free-kick sailed inches over.
There was precious little goalmouth action after the break – Mphela’s cross-cum-shot almost finding McCarthy, before Tshabalala’s free-kick sailed wide.
Kagisho Dikgacoi came closest in the second half, firing a curling shot inches over with the keeper well beaten, but ultimately it was a disappointing second half effort.
In fact, Jamaica came closest to scoring - substitute Omar Cummings heading over from right in front with just 10 minutes to go.
South Africa: Rowen Fernandez - Anele Ngcongca (Lance Davids 46th), Aaron Mokoena, Morgan Gould, Lucas Thwala - Kagisho Dikgacoi – Siphiwe Tshabalala (Bernard Parker 81st), Reneilwe Letsholonyane, Teko Modise (Elrio van Heerden 69th) - Katlego Mphela, Benni McCarthy (Richard Henyekane 68th) (Daine Klate 90th)
Jamaica: Dwayne Miller - Shavar Thomas, Jermaine Taylor, Dicoy Williams (Adrian Reid 80th), Jamal Campbell-Ryce (Eric Verman 66th) - Jason Morrison, Devon Hodges (Omar Cummings 69th), Demar Phillips, Jermaine Johnson (Nivean Boyd 76th) - Dane Richards (Lowel Palmer 84th), Rodolph Austin (Richard Edwards 76th)