Highlands made five changes in Marlon Heugh, Thabo Mofokeng, Peter Shalulile, Bevan Fransman and Mokete Mogaila to the visitors' two in Elias Pelembe and Gift Motupa.
The Lions of the North were quick out of the blocks when Shalulile went one-on-one with Darren Keet, who held his ground to make an excellent save on nine minutes.
For all their promise, Highlands were pinned back after Motupa handed the Students the lead on 13 minutes through a glancing header.
Highlands were back on level terms inside four minutes when Shalulile headed home at the far post following a long throw-in.
In the final five minutes of the half, a floating free-kick into the box from Wits found the head of Simon Murray, who sent the delivery wide.
Following a slow start to the second half, Wits looked to the bench and brought on Haashim Domingo for Murray on 58 minutes.
The Clever Boys made another change on 66 minutes as Vuyo Mere replaced Thabang Monare but the home side took the lead four minutes later after Mogaila rounded Keet for an easy finish.
In the final stages, Wits searched for an equaliser but solid defending from Owen Da Gama’s team maintained the home side’s lead as they boosted their top-eight hopes.
Highlands: Heugh, Fransman, Mokoena, Mofokeng, Msimango, Rae, Mbatha, Mahlangu, Shalulile, Mkhabela, Mogaila.
Subs: Peters, Haoseb, Ramoraka, Motlafi, Allie, Ngebo, Nyembe.
Wits: Keet, Hlatshwayo, Nonyane, Mkhwanazi, Hlanti, Alexander, Monare, Pelembe, Hotto, Motupa, Murray.
Subs: Goss, Mere, Ritchie, Domingo, Dzvukamanja, Lakay, Majoro.