David Goodwillie scored the only goal of the game when he reacted quickest to turn a loose ball home after a Paul Dixon corner in the 61st minute.
The result was harsh on the visitors, who over the course of the match created the better opportunities but could find no way past Dusan Pernis.
United made one change from the side that beat Ross County in Wednesday’s Co-operative Insurance Cup clash.
Defender Garry Kenneth recovered from a calf injury to take his place at the heart of the United defence with Scott Robertson dropping to the bench.
St Johnstone, looking for a third successive victory following wins over St Mirren and Queen of the South, made two changes. Midfielder Chris Millar and striker Andrew Jackson, returning after sustaining a head knock last week, were preferred to Liam Craig and Collin Samuel.
United began brightly with a flurry of early corners. But it was the visitors who had the best chance of the opening exchanges when Jennison Myrie-Williams, playing against his former club for the first time since moving to Perth a fortnight ago, opted to shoot when a pass seemed the better option. Sean Dillon was well positioned to make a comfortable block.
Myrie-Williams created another opportunity after 13 minutes, sprinting down the wing before producing an inviting centre which Pernis punched only as far as Murray Davidson, who failed to keep his effort under the crossbar.
Jackson was gifted a sight of goal after 28 minutes when Dixon’s miscued clearance fell kindly for the Saints player but Pernis made an instinctive stop.
A Dave Mackay corner was headed over by Michael Duberry just after the half-hour mark as the visitors continued to boss proceedings.
United came back into the match and Peter Enckelman, the Saints goalkeeper, was fortunate to gather a powerful Goodwillie effort at the second attempt.
United boss Peter Houston made a change at the break with Senegalese midfielder Morgaro Gomis, who had been having a quiet game, replaced by Robertson.
The visitors almost broke the deadlock within five minutes of the restart when Sam Parkin outjumped Darren Dods to head Danny Grainger’s cross goalwards but the Englishman’s effort just cleared the crossbar.
Grainger, also playing against his former club, drew a fantastic save from Pernis after 56 minutes with a well-struck free-kick that was destined for the top corner. From the resulting set-piece Duberry inexplicably volleyed over from six yards out with the goal at his mercy.
United made the breakthrough after 61 minutes from an inswinging Dixon corner. The Saints defence managed to block efforts by Dods and Prince Buaben but the loose ball fell kindly for Goodwillie, who made no mistake in prodding the ball past Enckelman.
A foul on Goodwillie by substitute Steven Anderson sparked a melee on the edge of the Saints’ penalty area which resulted in bookings for Jody Morris, Duberry, Buaben and Jon Daley.
Dixon’s low drive from the resulting free-kick was well kept out by Enckelman.
The visitors almost equalised when substitute Marcus Haber’s header was acrobatically kept out by Pernis.
In an enforced United change Andis Shala came on for Kenneth who was carried off with an injury following an aerial tussle with Haber.
The match ended in controversy when referee Brian Winter appeared to show Anderson a second yellow card but it was not followed by a red and the defender remained on the pitch for the closing stages.