The striker, on loan from Everton, collected the ball and dribbled past a couple of Boro defenders before unleashing a shot that took a deflection before nestling in the net to give Dougie Freedman his first win since being named the official Palace manager.
The Eagles had chances to kill the game off through Jermaine Easter and Darren Ambrose, and though they were made to hang on in the final stages, they managed to claim victory.
Boro were a touch unlucky to come away with nothing as they dominated possession and saw Julio Arca hit the post in the first half.
However, their failure to create any meaningful chances came back to haunt them as they saw their six-match unbeaten run come to an end.
Although Palace stayed in 21st place in the league, they moved four points clear of the drop zone.
Dean Moxey made his debut following a transfer deadline-day move from Derby in one of four changes to the Palace side that claimed a heartening 1-1 draw at Watford.
Tony Mowbray had no fewer than 11 players on the treatment table but he made just one change to the line-up that defeated Scunthorpe on Tuesday, with Jonathan Franks replacing the injured Marvin Emnes.
Despite their growing injury list, Boro have been on a good run of late and following a lifeless opening in which neither team was able to force the initiative, Arca nearly brought the game to life when his early strike from 35 yards cracked the post.
Kris Boyd and Leroy Lita narrowly missed the target with further long-range efforts as the visitors started to dominate proceedings.
Their failure to create any clear-cut opportunities came back to haunt them though as Vaughan broke the deadlock in the 36th minute.
The striker collected the ball and weaved his way through the Boro defence before his strike took a deflection, which lifted the ball over the unfortunate Jason Steele.
Mowbray's men had been looking vulnerable at the back after Matthew Bates had gone off injured and though they trailed at half-time, they could be consoled by the fact they came from behind to beat the Eagles the last time the two sides met in November.
However, they were indebted to Steele, who kept his side in the game with fine saves from Easter and Ambrose.
The Boro keeper's stop from Ambrose was particularly impressive as he had to get down low to palm the former Newcastle man's effort from the edge of the area to safety.
As the visitors pushed for an equaliser, Wilfried Zaha struck wide from 12 yards on the counter attack.
Boro were unable to test Julian Speroni in the closing stages despite good pressure and the hosts claimed their first win in six matches.