Matt Hazley bagged a brace of great goals against his former club as Dungannon secured win number five of the season to leapfrog their victims into ninth place — easing away from the trouble zone.
Swifts boss Darren Murphy paid tribute to his goalscoring hero.
“Both teams had a real go, Mattie Hazley scoring two superb goals for us,” he said.
“We had been playing well but not getting the results, but we got the breaks for a change.”
Swifts — with six ex-Glenavon players in their starting line-up — got off to a flying start, the first chance coming when Hazley laid the ball off to unmarked James Costello on three minutes.
But it was a poor finish as the former Mourneview hitman saw his scuffed shot easily saved by Andy Coleman.
However that miss was soon forgotten as Hazley spotted an opening on six minutes and, from 22 yards and just right of centre, he rifled low to the left corner to score.
Glenavon had chances too but Kyle Neill fired a 25 yard free wide and Conor Hagan headed over before their best spell midway through the first half.
A cross from Andy McGrory created a chance for Guy Bates but his effort scraped the post.
Bates then seized on a defensive mix-up and slipped a pass to Mark Farren, but a weak finish from the former Derry City man was easily saved by Johnny Curran.
Glenavon had another couple of opportunities after the half-hour, Bates heading just wide before some excellent work by the home defence kept the slender lead alive a little longer.
A shot by Farren brought the best from Curran and a follow-up header by Ciaran Doherty was stopped on the line by Adam McMinn before Emmett Friars cleared.
The pressure eventually told on Swifts as a long kick-out from Coleman was headed down by Bates for Farren to dispatch a shot from just inside the box into the bottom right corner of the net.
However almost before the visitors’ celebrations had ended, Hazley had Swifts back in front, blasting from a near impossible angle to somehow find the net.
The second half failed to maintain the tempo of the first, chances few and far between.
Bates had a shot on the turn blocked, while Swifts substitute PJ Lavery brought a full stretch save from Coleman with his first touch.
The sides swapped scoring chances again, Bates and Farren forcing saves either side of a long range effort from Costello that whizzed just past the right post.
Dungannon Swifts: Curran, Montgomery, McMinn, Friars, Cahoon, Costello, Grieve, O’Neill, Hutchinson, Harpur, Hazley. Subs: PJ Lavery for Cahoon 75, C Lavery for Hutchinson 76.
Glenavon: Coleman, Neill, Haughey, Kilmartin, Doherty, Bates, Farren, Lindsay, Brown, Hagan, McGrory. Subs: Henderson for Hagan 46, Shannon for Haughey 64, Mitchell for McGrory 70.
Referee: Colin Burns (Newtownabbey).