Steven Thompson's early opener for the Buddies was cancelled out by Jamie Hamill's stunning strike and administration-hit Hearts head into 2014 on minus one point.
Saints took just three minutes to snatch the lead as Thompson drove the ball past the helpless Jamie MacDonald in the Hearts goal.
Jason Naismith threatened to add a second when his shot was saved by MacDonald, but Danny Wilson should have settled Hearts' nerves as he headed wastefully wide.
A hopeful effort from Jamie Walker flew over as Hearts continued to search for a leveller, but St Mirren still threatened and Sean Kelly went close with a shot.
It was the visitors' turn to strike a swift blow in the second period as Hamill's long-range effort on 48 flew into the top corner, but Thompson spurned a chance to level, shooting wide from a few yards out.
Hearts tried to make the most of this let-off as Scott Robinson's drive flew past the top corner and Callum Peterson glanced past the post.
Both sides could have pinched the points in the closing stages as St Mirren's Conor Newton was denied by Marian Kello before Callum Paterson went close for Hearts.