The hosts made the best possible start as Mario Mandzukic volleyed home the winner from Antoine Griezmann's pass after just 90 seconds.
Real boss Carlo Ancelotti had named Cristiano Ronaldo on the bench due to the effects of a hamstring injury that had seen him withdrawn from the first leg.
However, even the Portuguese couldn't break down Atletico's typically well-organised defence as they held on to end Real's hopes of claiming six trophies this season.
"Between the end of last season and now Real Madrid has won three cups," said Ancelotti.
"I want to thank all the players and the club because I think we have done very well.
"In this game we didn't play well but I would rather this one than the Champions League final."
As well as leaving Ronaldo on the bench, Ancelotti also fuelled speculation over Angel di Maria's future by excluding the Argentine from his squad entirely.
However, he claimed Di Maria's absence had purely been for sporting reasons.
"Di Maria was a technical decision. I didn't need him today."
Atletico boss Diego Simeone was sent off midway through the first-half for protesting that right-back Juanfran hadn't been allowed back onto the field quickly enough after receiving treatment for a facial injury.
The Argentine could be in for a severe ban as he confronted the assistant referee and sarcastically applauded the decision.
However, he apologised and admitted he had overreacted at the time.
"When you commit an error you have to ask for forgiveness and I accept it was an error," he said.
"I exaggerated in trying to get Juanfran on."
Victory was Atletico's first at home against Real in 15 years and continued Simeone's amazing run of success since taking charge of the club just under three years ago.
However, he again downplayed expectations that Atletico can repeat their amazing La Liga title triumph of last season.
"When you play in a league that is so long against Real Madrid or Barcelona it is very difficult to compete, but in one or two games we have the capability to beat anybody."
Real were caught out by a flying start from Atletico as Raphael Varane's misjudged header allowed his French international teammate Griezmann to feed Mandzukic to score his first goal since signing from Bayern Munich.
The visitors slowly grew into the game, though, and Luka Modric was inches away from a spectacular equaliser when he volleyed just over from outside the area.
James Rodriguez then began to dictate the pace of the game and he was only denied a leveller by a spectacular save from Miguel Angel Moya before the Colombian also directed a header just wide of the target.
Rodriguez then fed Gareth Bale inside the area, but the Welshman pulled his shot disappointingly wide.
However, it was Atletico who had the clearest chance to double their advantage before half-time as Raul Garcia inexplicably headed over Koke's corner from point-blank range.
Ronaldo made his entrance at the break as he replaced the ineffective Toni Kroos.
Garcia was inches away again at the start of the second period as this time he turned a Koke free-kick onto the underside of the bar and Iker Casillas reacted well to prevent Mandzukic forcing the ball home from close range.
Ronaldo made his first real impression with a thunderous effort that was well held by Moya, but Atletico were creating the greater threat and went close twice more through Koke and Griezmann.
And Real's miserable evening was rounded off in stoppage time as Modric was sent off for a second bookable offence when he upended Cristian Rodriguez.