The Serbia striker took his tally to 23 goals in as many games for club and country this season as he led his side to within two points of the Championship's automatic promotion places.
George Byers scored a second-half header, but it was not enough to end Swansea's dismal home run of just one win from their last seven matches at the Liberty Stadium.
Fulham's fourth consecutive victory took them to within a win of second-placed Leeds before Saturday's matches.
Fulham came to the Liberty Stadium on the back of a fine run of form that had propelled them up to third place.
But manager Scott Parker was forced into a single enforced change as Josh Onomah came into midfield after Bobby Reid – who netted his first Fulham goal in the win against Derby in midweek – failed a fitness test.
The Swans have taken just four points from a possible 21 at home since the start of September but they began as if they were brimming with confidence.
Surridge somehow failed to score from four yards out after Andre Ayew's audacious outside of the foot cross, before Byers struck a post.
But Mitrovic continued his goalscoring run to give Fulham the lead against the run of play after 22 minutes.
And he was not done there as Fulham punished Swansea on the break two minutes before half-time.
Kristoffer Peterson's risky pass deep in his own half was intercepted by Onomah into the path of Ivan Cavaleiro. Onomah raced into the box to get on the end of the cross but scuffed a shot into the path of Mitrovic, who showed his team-mate how it is done by finding the top corner.
Byers gave Swansea hope with 25 minutes remaining when he headed in from Barrie McKay's cross after his initial free-kick was blocked by the wall.
But the fightback fell short as Parker's men held on for an away win.