PORTLAND, Ore. -- Damian Lillard couldn't believe it. He had a clear path to the hoop.
"I turned the corner and I was like, it's wide open so I'm going to get to the rim," Lillard said. "It was pretty wide open so I was pretty sure of myself getting all the way there."
The Suns led by as many nine points in the second half but the Blazers went ahead 78-77 on Lillard's hook shot with 6:45 left. The teams traded the lead as time ticked down until Eric Bledsoe's layup put Phoenix up 87-83.
Wesley Matthews made a 3-pointer and Robin Lopez tipped in a shot to put the Blazers in front 88-87 with 1:35 left. Miles Plumlee's layup gave the Suns the lead again, but then Bledsoe missed a shot with 11.9 seconds remaining, giving the ball to the Blazers.
"It was uncontested," Lillard said. "I got straight to the rim. I had missed a couple earlier but that was the one that counted."
Suns coach Jeff Hornacek said it was a breakdown of basic pick-and-roll defense.
"He's a fast guy, so our bigs have to pick him up. But we were just worried too much about (LaMarcus) Aldridge and didn't make Lillard slow down at all," Hornacek said. "He had a full head of steam."
Lillard finished with 11 points and eight assists in the Blazers' fourth straight win. Lopez had 13 points and 15 rebounds, while Aldridge had 12 points and 12 rebounds. It was the third straight game in which both Lopez and Aldridge finished with a double-double.
Bledsoe scored 23 for the Suns, who defeated Portland 104-91 in the season opener.
Matthews' layup put the Blazers in front 22-17 late in the first quarter, but the first half was marked mostly my missed layups and turnovers on both sides. At one point Blazers guard Mo Williams clapped his hands in frustration after a miss.
Goran Dragic put the Suns in front 35-34 midway through the second quarter with a tip shot.
Dragic was making his first start after an ankle injury sidelined him for three games. He came off the bench Sunday against in a win over New Orleans, scoring 12 points.
Dragic finished with 14 points against the Blazers, but also took 13 stitches above his left eye because of a collision with Williams in the fourth quarter.
"We just bumped heads and he opened up my eye but that's just part of basketball," Dragic said. "It was not intentional, for sure."
Lillard's basket and Aldridge's dunk narrowed it to 43-41 at the break. The Blazers had 12 turnovers at halftime and finished with 17 for the game.
It stayed close in the third quarter but Bledsoe gave the Suns a 58-53 lead on a fast-break layup. Phoenix extended it to 68-59 on Morris' long jumper and another fast-break basket from Bledsoe.
Dorell Wright's pull-up jumper got Portland to 68-67 but the Suns stifled the threat and went back ahead 77-69 after Gerald Green's 3-pointer with 8:50 to go. Portland closed to 77-74 on Matthews' 3-pointer with 7:31 left.
Portland was coming off a 109-103 victory at home over the Detroit Pistons on Monday night, while the Suns were coming off a 101-94 victory over the Pelicans on Sunday to improve to 4-0 at home this season.
Both teams went into the game 5-2.
Morris was named the Western Conference player of the week after averaging 22.8 points, eight rebounds and two steals off the bench in the previous three games. He was the Suns' first player of the week since Amare Stoudemire in 2008. ... Portland Timbers forward Frederic Piquionne attended the game. The Timbers play the second game of their two-leg goal aggregate Western Conference final against Real Salt Lake on Nov. 24. RSL won the first match 4-2 on Sunday.