David Cairney converted on 25 minutes after goalkeeper Rab Douglas was judged to have pulled down Chris Erskine inside the penalty area.
Referee Steven McLean immediately gave the award and infuriated Dundee even more by issuing Douglas with a red card, although it later emerged that it was in fact defender Matt Lockwood who fouled Erskine.
Douglas remonstrated furiously but it was in vain, and substitute keeper John Gibson was beaten from the spot by Cairney.
Thistle had to survive a barrage of pressure in the second half but were solid enough, and had goalkeeper Ryan Scully to thank as they held out for full points.
Gavin Rae almost equalised for Dundee before the interval but his shot from 16 yards was saved. And Scully denied Dundee again on 58 minutes, this time pushing away a Ryan Conroy header.
Rae spurned another chance to level with 15 minutes remaining, scooping a shot over the bar from ten yards.