Middlesbrough's unbeaten start to the season came to an end as Crystal Palace claimed their first win of the new campaign with victory at the Riverside.
Christian Benteke met Wilfried Zaha's cross before Boro drew level when Daniel Ayala scored an equally powerful header from Stewart Downing's corner.
Zaha put Palace back in front, finishing James McArthur's through ball after weak defending by George Friend.
Boro pushed hard for another equaliser, but the away side's defence held firm.
Joel Ward brilliantly denied Alvaro Negredo with an acrobatic clearance after Steve Mandanda palmed away a Gaston Ramirez shot, while Boro thought they might have been awarded two penalties.
The referee waved away appeals after Scott Dann handled the ball when clearing a cross, and a Zaha challenge on Friend in the fifth minute of stoppage time resulted in a free-kick on the very edge of the area.
Victory for Palace lifts them up to 12th in the table on four points from four games, while Boro slip to eighth, with one point more.
Benteke's opener was his first goal for Palace since joining from Liverpool for a club record £27m in August. It was the kind of towering header typical of his best seasons in the Premier League with Aston Villa between 2012 and 2015.
After Adam Clayton's misplaced pass, Palace took a throw-in on the right flank, from where Zaha delivered a diagonal cross towards the Belgian at the back post.
He easily shrugged off his marker, hung in the air and planted a header beyond Victor Valdes, a spectator in the Boro goal.
Later, Benteke was replaced by his 21-year-old brother Jonathan - who joined Palace's development squad on 1 September but was a substitute on Teesside, while Mathieu Flamini also came on for his Palace debut.
Boro's off-day at the back
Middlesbrough boss Aitor Karanka will be very disappointed with his side's defensive performance.
Their promotion-winning campaign last season was build on solidity at the back, especially at home, but the second goal they conceded immediately after the break ultimately handed the match to Palace.
It looked a relatively simple intervention but Boro's usually impressive left-back Friend dallied when dealing with McArthur's pass and allowed Zaha to steal in for a simple finish on his left foot.
The home side recovered well and would have drawn level again had it not been for some excellent defending, but their spirited second-half comeback came to nought.
Man of the match - Wilfried Zaha (Crystal Palace)
What they said
Middlesbrough manager Aitor Karanka: "We have lost when we were in a good position. When you lose a game through mistakes it is difficult, but we have to think about the future and learn. We have to keep going.
"All of us have learned we can't drop our intensity in the Premier League, we have to play always in the same style. We had a lot of chances in the second half and if we had played the first half the same way we would have won the game.
"The club has done an amazing job building this squad, I am really pleased with them. We can't drive ourselves crazy because we are in a good position."
Crystal Palace boss Alan Pardew: "The first 20 minutes were important for us that we built on the Bournemouth performance and we were terrific in that period, we deserved the lead.
"You can't control a whole Premier League game and we had to really hold on towards the end. If we do that for 38 games we'll go OK. We have some big players back at the ranch and hopefully we can get them fit.
"I thought Wilf (Zaha) was terrific and he deserved the assist and the goal. He showed qualities offensively and defensively."
Middlesbrough next play away to Everton in a 15:00 BST kick-off on Saturday. Palace play again next Sunday when they host Stoke at 14:15.
The stats you need to know
- Middlesbrough suffered their first defeat in their last 14 league games (W7 D6).
- Crystal Palace finally secured an away league win in 2016 at the 12th attempt.
- Christian Benteke is the first Belgian to score for three different Premier League clubs (Aston Villa, Liverpool and Crystal Palace).
- Wilfried Zaha scored for the first time in his last 24 Premier League appearances, last scoring in November 2015 v Newcastle.
- Daniel Ayala netted his first Premier League goal in his 15th appearance in the top-flight (5 games for Liverpool, 7 for Norwich and 3 for Middlesbrough).
- All four of 'Boro's goals this season have come in the first-half.