The decisive moment arrived seven minutes after the break, when the much-travelled striker found the bottom left-hand corner of the net from inside the box.
The hosts should have extended their lead when a close-range header by defender Murray Davidson flew over the bar, while Gregory Tade missed the target when well placed on the hour.
Esmael Goncalves missed a rare chance for the visitors on 66, before Steven MacLean and Steven Anderson failed with further attempts to extend St Johnstone’s advantage.
Paul Dummett fired an injury-time effort wide of the left post as St Mirren chased what would have been an undeserved equaliser before Craig Sampson saved from Tade.
In a goalless first half, the hosts enjoyed greater possession but were unable to break down the SPL strugglers.
David McCracken headed over from inside the box after just six minutes, while Liam Craig had an effort saved by Samson on the half-hour.
Callum Davidson then fired wide for the Europa League hopefuls 10 minutes before the break.
At the other end, keeper Alan Mannus denied Conor Newton while Jim Goodwin headed over from inside the box.