
Wayne Rooney had equalized for United after Ballack had headed the London side ahead on half-time but after a hand-ball from Michael Carrick, Ballack converted from the spot to put Chelsea level on points with United at the top.
United have the superior goal difference but they must now win their two remaining games to be sure of retaining the title.
At the other end of the table, second-from-bottom Fulham gave themselves real hope of survival after an incredible comeback from 2-0 down to win 3-2 at Manchester City.
Birmingham City are still in the relegation zone after they conceded a two-goal lead to draw 2-2 with Liverpool. They play at Fulham next weekend.
"We did what we needed to do. We won the game. I think it puts them under pressure," Chelsea manager Avram Grant said.
"I'm very proud of what we're doing this season. This team has a lot of character, and also we played good football today. We did what we had to do and I hope everyone will be happy at the end of the season."
Knowing that a draw would put them firmly in charge, Sir Alex Ferguson left Cristiano Ronaldo and Carlos Tevez on the substitutes' bench while Chelsea were without Frank Lampard, on compassionate leave.
Chelsea began the brighter, though, with Joe Cole hitting the bar on 20 minutes and they took the lead just on half-time when Didier Drogba did well before finding Ballack, who headed the opener.
The German and his team-mates then revealed t-shirts underneath their shirts with tributes to Pat Lampard, Frank's mother, who died earlier this week.
Ten minutes after half-time, though, a calamitous piece of play from Chelsea handed United the equaliser.
After their side won a free-kick, Ricardo Carvalho miscontrolled the ball. He tried to pass it to John Terry but Rooney got in first and shot past Petr Cech.
Chelsea then came back into the game but tensions ran high, marked by a moment of comedy from Drogba and Ballack.
After winning a free-kick on the edge of the box, the two squabbled like schoolchildren over who should take it. Eventually, Drogba won the argument but his shot was saved by Van der Sar and Ballack then refused to speak to him.
United brought on Ronaldo in search of the winner and lifted their game again, but Chelsea were still dangerous and won the penalty six minutes from the end when Carrick handled a cross by Michael Essien.
Ronaldo had a shot cleared off the line by Ashley Cole and then substitute Andriy Shevchenko cleared a Darren Fletcher header off the line, while the match ended in a flurry of bookings - with six booked in all.
In the end, though, Chelsea held on to leave the title race neck and neck.
"For me it is no problem, I can handle the pressure - it is always a good situation and I like this," Ballack said.
"We had just a little chance with a win and we did it."
United assistant manager Carlos Queiroz was disgusted with referee Alan Wiley for not giving a penalty at the other end when he thought Ronaldo had been fouled by Ballack.
"How can the referee not see that Ballack has jumped on Ronaldo?" Queiroz said.
"It must be necessary for a player to bring a gun and shoot one of our men in the box for us to get a penalty."
"The defeat by Chelsea has not caused any damage for us. We will concentrate and do our job and stay committed."
Fulham looked like their relegation would be confirmed when they trailed 2-0 at Manchester City but a superb second-half comeback gave them a 3-2 win, with Diomansy Kamara scoring a last-minute winner.
The result lifts them to 30 points, just two points behind Birmingham, who will be kicking themselves after letting slip a 2-0 lead over Liverpool.
Mikael Forssell and Sebastian Larsson put them 2-0 up, but a Peter Crouch goal and a deflected Yossi Benayoun header sealed a point which effectively ensures Liverpool fourth spot.
Reading and Bolton are still in trouble, on 33 points, but both clinched crucial points away from home.
Bolton survived an onslaught by Tottenham Hotspur to draw 1-1 at White Hart Lane, while Reading held Wigan Athletic to a goalless draw at the JJB Stadium.
Newcastle came from 2-0 down to draw 2-2 at West Ham United, while Sunderland beat Middlesbrough 3-2 in the day's other game to ensure themselves Premier League football next season.
By Ben James, dpa