Bagging their second straight win, the hosts climbed to the top of the Currie Cup table as the only unbeaten team after two rounds of the competition.
Sharks centre Meyer Bosman slotted over a penalty in the ninth minute, with a kick that stayed low and just cleared the crossbar, but they gave away their lead soon after with a penalty try.
The Lions were given five points after a collapsed scrum in the 16th minute and flyhalf Butch James converted to give the visitors a 7-3 advantage which they held till shortly before the break.
Bosman added another three points from a penalty after 33 minutes but he missed an opportunity in the dying stages of the opening period as the visitors clung to a 7-6 half-time lead. Fighting back, the Sharks edged ahead again five minutes after the players returned to the field, with Bosman knocking over his third penalty kick.
Wing S'bura Sithole heaped further pressure on the visiting side when he dived over on the left for the first actual try of the match with half an hour left.
The hosts cemented the lead seven minutes later when Jean Deysel popped the ball over to the side's other wing, Odwa Ndungane, who fumbled it slightly but maintained control to get the ball over the try-line.
Bosman added further points from both tries and the Sharks strengthened their grip on the game.
The Lions, losing momentum, fought to stay in the match and drove over with flank Cobus Grobbelaar touching down, and while James converted, the home side struck back immediately.
Deysel barged over two minutes later and Bosman added another conversion as the Sharks maintained their 16-point margin, which they held for 15 minutes, keeping the Lions at bay until the final whistle.
Teams:
Sharks:
15 Louis Ludik, 14 Odwa Ndungane, 13 Paul Jordaan, 12 Meyer Bosman, 11 S'bura Sithole, 10 Riaan Viljoen, 9 Charl McLeod, 8 Jacques Botes, 7 Jean Deysel (captain), 6 Francois Kleinhans, 5 Anton Bresler, 4 Steven Sykes, 3 Wiehahn Herbst, 2 Craig Burden, 1 Dale Chadwick.
Substitutes: 16 Monde Hadebe, 17 Julian Redelinghuys, 18 Jandre Marais, 19 Lubabalo Mtembu, 20 Cobus Reinach, 21 Marius Joubert, 22 Gouws Prinsloo.
Golden Lions:
Substitutes: 16 Francois du Toit, 17 CJ van der Linde, 18 Willie Britz, 19 Jaco Kriel, 20 Ross Cronje, 21 Guy Cronje, 22 Ruan Combrinck.