The on-loan Newcastle player scored one and set up another as Saints notched three unanswered goals before the break.
St Mirren went ahead in the sixth minute when Hibs goalkeeper Ben Williams was credited with an own goal after Paul McGowan's shot hit him after coming back off the post.
Campbell then struck from close range before setting up Steven Thompson as the Buddies scored two goals in two minutes.
Hibs striker James Collins notched a brace after the break, the second coming in the 88th minute, but St Mirren held on to move within five points of the Leith outfit.
The visitors were up and running after just five minutes when home goalkeeper Williams scored an unfortunate own goal. McGowan's low drive from a Sean Kelly pass came back off the upright and crashed off the grounded Williams' back before going into the net.
It was a lively start at Easter Road. After eight minutes Lewis Stevenson produced a teasing delivery from the left flank that was met by Jason Cummings, but the youngster could not keep his header down.
Moments later Hibs were forced into a change after Ryan McGivern hobbled off clutching his hamstring, with Alex Harris coming off the bench.
Williams was then called upon to make a routine save after Thompson headed John McGinn's cross goalwards from 16 yards.
Hibs came within inches of levelling in the 10th minute following a moment of indecision in the Saints' defence. Marc McAusland and Jim Goodwin left the ball to each other in the box and Cummings intervened, but his deflected left-footed shot bounced just past the post.
It was an open half of football. Next Alan Maybury produced a cross after skipping past McGowan but Scott Robertson miscued a header.
Hibs were then left stunned when the visitors went 3-0 up with two goals in as many minutes.
The first arrived in the 24th minute when the impressive Campbell played a one-two with McGinn before slotting a low shot beyond Williams at an angle.
The home support were still coming to terms with that setback when Saints added a third. Campbell floated a teasing cross into the box after getting past Stevenson and Thompson powered a header high into the net from close range.
Hibs put together a well-worked move involving Harris and Robertson that saw Collins hit a fierce shot from distance straight at Marian Kello.
The woodwork then came to Hibs' rescue three minutes before the break when a McGowan dink from inside the area came back off the bar.
Hibs made another change at the interval with Sam Stanton replacing Paul Cairney.
The home side were more fired up after the break and a Harris drive from 15 yards was punched away by Kello.
From the resulting corner, Harris' delivery was headed in by Collins at the front post.
The striker ensured there was a nervy ending to the match for Saints by adding a second in the 88th minute when he headed in a Stevenson free-kick.
Hibs then had shouts for a penalty turned down when the ball appeared to strike Campbell's hand.