Dungannon finished with nine men as Glenavon earned a Premiership victory at Mourneview Park.
Ryan Harpur smashed in the opener for the Swifts before Kevin Braniff levelled from a penalty.
Kris Lindsay's bullet header moved Glenavon in front before the break and James Singleton headed in the third from a Kyle Buckley free-kick.
Douglas Wilson and Jamie Glackin were both shown straight red cards for poor tackles late in the game.
Wilson fouled Eoin Bradley on 85 minutes while Glackin was dismissed for a challenge on Singleton in the dying seconds.
What they said
Glenavon assistant manager Paul Millar: "It was a game between two fully committed sides and we're delighted to get the three points.
"We won 3-1 but it could have been five or six - there were some odd decisions given.
"Dungannon have been a bit of a bogey team for us so it's good to get that monkey off our back.
"It was another good team performance and we've been superb throughout the season bar our first game against Cliftonville."