The Swallows goals were scored by Sandile Ndlovu and Bevan Fransman, while Shaun Bartlett scored for Chiefs.
The visitors were down to nine men in the second half when they had both Japhet Zwane and Fransman sent off by referee Ace Ngcobo.
The visitors deserved the win simply because they had the better scoring opportunities and looked the more likely to score for most of the match.
In the 19th minute Sibusiso Themba had his shot saved by Chiefs’ keeper Itumeleng Khune.
Swallows had a great chance to take the lead in the 23rd minute when a cross from Zwane found Sandile Ndlovu in the box in a great scoring position, but instead of burying the ball in the back of the net he hammered it over the bar.
Khune was again on hand to deny Swallows when he made a save from a James Chamanga shot in the 34th minute.
Ndlovu again found himself in a great goal scoring position inside the box in the 41st minute, but was denied by a great tackle by Fabian McCarthy.
Zwane hammered a cross into the area which was spectacularly punched out by Khune just before the break to keep the score goalless.
Fransman hammered a long range shot well over the bar just after the break.
Three minutes later Swallows took the lead when a cross found Chamanga on the right just inside the 18-yard area, he passed the ball to Ndlovu, who scored with a tap-in.
In the 54th minute Swallows scored again when the ball was lobbed into the area from the middle by Zwane and Fransman ran forward and got a boot to the ball before Khune could reach it to score.
Chiefs pulled a goal back in the 74th minute when Bartlett scored with a header from a low cross by Jimmy Tau from the right.
In the 81st minute Swallows were down to 10-men when the referee red-carded Japhet Zwane for a dangerous tackle on Jimmy Tau.
Mabhuti Khanyeza missed a great opportunity from about 10-yards out when he hammered his left-footed shot wide after Bartlett headed the ball to him in the 88th minute.
Thuso Phala nearly grabbed the equalizer two minutes later when his shot flew narrowly over the bar from inside the box.
In the 94th minute Swallows were down to 9-men when the referee sent Fransman to the stands for an off the ball incident.
But Swallows held on to get a well-deserved win.