Wolves almost took the lead when Nathan Byrne latched on to Bjorn Sigurdarson's cross, but David Button saved.
Brentford fought back as Alan Judge hit the outside of the post from long range before Swift's deflected shot put the hosts in front before half-time.
Sergi Canos found Brentford's second from an acute angle before Swift stabbed in a second from close range.
Prior to Swift and Canos extending the hosts' lead, Kevin McDonald could have forced an equaliser for Wolves when he drove a shot from 20 yards that forced Button into a fine low save.
Brentford, who came into the game on the back of a winless run of three matches, moved up three places to 11th in the Championship.
Wolves slip to 15th with their last three points coming in their 3-2 win against Fulham on 12 January.
Brentford manager Dean Smith:
Media playback is not supported on this device
"It was a really good performance matched by the result and a clean sheet too. We wanted to start on the front foot with three ball carriers and I thought we did that.
"We have conceded sloppy goals in previous weeks from our point of view so this will give the lads a lot of confidence. We won't rest on our laurels though because it's tough every week in this league."
Media playback is not supported on this device
Wolves boss Kenny Jackett:
"The games come thick and fast and we need to make it more competitive and closer than today because by the end they were three goals better than us.
"It wasn't a good feeling on the side and we didn't get anything out of the game. We have difficult games coming up and need to find resolve and character to change things around."
John Swift scored twice for Brentford as the Bees stretched Wolves' winless run to seven matches.