Morata, who moved from Real to Juventus last summer, tapped home the rebound from a Tevez strike on eight minutes to send Juventus Stadium into raptures.
The hosts were pegged back just before the half-hour thanks to Cristiano Ronaldo's 76th goal in the competition, a simple header that beat Gianluigi Buffon from close range.
But the Turin giants were back in front when Tevez beat Iker Casillas from the penalty spot on 57 minutes after he was felled in the area.
Real host Juventus on May 13th when they will look to make their precious away goal count as they bid to secure a second consecutive final.
However Juve, who last appeared in the last four in 2003 when they were beaten by AC Milan in the final, will feel confident of causing an upset against the record 10-time and defending champions.
"I would have signed for that result at the start of the match," said Juve coach Massimiliano Allegri.
"But we will have to play a lot better in the second leg if we are to go through."
Morata told Sky Sport: "We will have to play the perfect game at the Bernabeu. Above all, we have to believe we've done nothing yet."
Real coach Carlo Ancelotti, who was without injured French striker Karim Benzema, admitted Juve were having a "great" season and conceded: "We made a few more mistakes than we usually do and didn't have much control in the opening half.
"But I'm confident our fans will push us through in the second leg."