Niese pitched seven steady innings on a rainy Tuesday night and Daniel Murphy had three hits to lead New York to a 6-1 victory over the Phillies.
Ruben Tejada doubled and had two RBIs for the Mets, who chased Cole Hamels in the fifth and have won seven of nine. They improved to 15-11 overall, marking the first time New York has been four games over .500 since July 14, 2012.
"Conditions are really tough and Jon just keeps cruising along," Mets manager Terry Collins said. "You have to be pretty impressed with the way he's going about it. He used all of his pitches. It seemed like he had good command of his curveball even though it was wet. ... He went out and pitched another great game."
Marlon Byrd homered and Ryan Howard had two hits with a double for Philadelphia, which lost for only the third time in nine games.
The start was delayed by rain for 1 hour, 28 minutes, and the temperature at first pitch was a chilly 46 degrees. Many in the announced crowd of 28,189 who braved the cold were dressed more appropriately for a Philadelphia Eagles football game in December, with hooded sweat shirts, winter coats and wool blankets.
There was a misty rain for the first 2 1/2 innings before heavy rain began to fall in the bottom of the third. The rain tapered off to a drizzle before becoming heavy again in the seventh.
The weather hardly affected Niese (2-2), who didn't allow a hit until Byrd's two-out homer in the fourth. The left-hander gave up four hits while striking out five and walking one.
"It was another cold one," Niese said, "but it seems like the more I pitch in cold weather, the more I figure out how to stay warm."
Niese sat near a heater in the Mets' dugout and kept his hands in his jacket pockets, which contained hand warmers. While on the mound, Niese said he made sure to move around constantly rather than stand still.
"I was able to effectively throw my pitches," he said.
Said Murphy, "He threw the ball great. It was a treat to watch from second base."
Hamels (0-2) struggled in his first home start of the season, allowing six runs on eight hits with five walks and a hit batter in 4 2-3 innings. Seeking his 100th career victory, Hamels lost the strike zone in the fourth when he walked four batters, including Niese with the bases loaded, as the Mets took a 3-0 lead.
Hamels was making his second start of the season after opening on the disabled list due to left biceps tendinitis. The lefty's ERA rose to 6.75 as he dropped to 2-8 in his last 10 home starts against the Mets.
Murphy had a two-out RBI single in the third, and Josh Satin singled home a run in the fourth.
"I've never seen Cole be that erratic, and I'm sure a lot of that was the conditions," Collins said. "It's early in the year and he missed a lot of spring training. He'll be fine, I'm sure."
Hamels said the conditions made it difficult to pitch but blamed himself for not being able to adjust better.
"The elements got the best of me today," he said. "From my standpoint, I'm truly embarrassed because I didn't really give anyone a chance."
Hamels said a lack of perspiration made gripping the ball difficult.
"When you're able to perspire, you're able to get certain types of grips with the baseball," he said, before joking: "Today might have been the day to use pine tar, but unfortunately I don't do that. It might have been the day to learn. It was difficult to throw the baseball and difficult to throw strikes. You have to be able to battle out there, and I wasn't able to do it."
Byrd's homer pulled the Phillies to 3-1, but New York chased Hamels when it got an RBI double from Chris Young and a two-run single from Tejeda to make it 6-1 in the fifth.
NOTES: Mets starters have given up more than three runs once in the last 13 games. ... Murphy extended his hitting streak to 10 games. ... Mets RHP Bartolo Colon (2-3, 4.50 ERA) is scheduled to face RHP Kyle Kendrick (0-2, 3.52) in the conclusion of the two-game series Wednesday night. ... During the rain delay, the Phillies showed Game 6 of the NHL playoff series between the Philadelphia Flyers and New York Rangers on the scoreboard and rang the bell in center field traditionally rung for home runs when Wayne Simmonds scored a first-period goal to give the Flyers a 1-0 lead.