Jason Robertson had a goal and an assist, and Matej Blumel scored his first NHL goal for Dallas (9-5-1), which had lost two straight. Jake Oettinger made 37 saves.
"We knew we needed to win tonight," Stars coach Pete DeBoer said. "We look around the League and you see teams have these losing streaks, roll one into two, two into four or five. We wanted to make sure we didn't do that. This was an important game for us, an important start to the (three-game road) trip."
Travis Konecny scored for Philadelphia (7-6-2), which has lost three straight, including 4-1 to the Ottawa Senators on Saturday. Felix Sandstrom made 26 saves.
"I think it's just those little breakdowns that are beating us right now," Konecny said. "If you look at the shots right now that we're generating and opportunities, it's way different than when we were winning at the start of the year, and we probably shouldn't have been. That's going to come. The [coaching] staff has been positive with us as far as the opportunities we are getting, and it's just a matter of not beating ourselves."
Blumel gave the Stars a 1-0 lead at 2:36 of the first period. The forward was playing his second NHL game after being recalled from Texas of the American Hockey League on Nov. 9.