May - who Saints boss Tommy Wright says will only leave this month if they receive a "massive" offer - struck in the 26th minute, steering home after a brilliant run and pass from David Wotherspoon, who brilliantly teed the striker up despite slipping.
Saints' victory means they are just two points behind fifth-place Dundee United. Partick remain down in 11th, propped up only by Hearts and winless at home in the league all season - that is 12 matches at Firhill.
May caused havoc all night, and Lee Mair had to be alert to block him as early as the fourth minute.
Paul Gallacher then kept out a Patrick Clegg effort as the visitors dominated the early stages.
It was no surprise when May finished after Wotherspoon's magnificent run in from the left flank which took him past three hapless Partick players. And the goal woke Thistle from their slumbers and they began to rain in long-range efforts.
Kallum Higginbotham smashed a free-kick just over, then Saints keeper Stevie Banks had to turn away a stinging Lyle Taylor effort.
Chris Erskine, making his first start since re-signing for Partick on loan from Dundee United, was just over on 42 with a 30-yard bullet and Saints were relieved when the half-time whistle blew.
Taylor was wide with the first effort of note in the second-half, but at the other end Saints almost doubled their lead when May returned the favour to Wotherspoon on 54, cutting the ball back from the bye-line, but his team-mate's shot was deflected wide.
Mair brought a fine save out of Banks in the Saints goal on 56, whilst at the other end Chris Millar and then May - heading just wide from Dave Mackay's cross on 63 - almost doubled the visitors' lead.
Erskine, lively all night for the hosts, twice went close to equalising, firing one shot just wide and then volleying just over the bar.
With just a few minutes left, Kris Doolan's shot took a deflection off a flailing Saints leg and shaved the outside of the post.
And with a minute to go it was down to Tam Scobbie's block on substitute Ross Forbes' shot to preserve the result for Saints. It just wasn't to be for Partick yet again at home this season.