But the Bucks also took a big loss.
Center Andrew Bogut was hospitalized after an awkward fall. Bogut suffered a dislocated right elbow, sprained wrist and broken right hand, the team announced late Saturday.
There is no timetable for Bogut's return, Bucks GM John Hammond said in a statement.
With Bogut out, Brandon Jennings scored 23 points to lead seven Milwaukee players in double figures -- and a player who was called on to make up for Bogut's absence, veteran Kurt Thomas, made a critical block in the final minutes.
The loss ended a three-week winning streak for the Suns, who got 22 points from Amare Stoudemire and 21 from Leandro Barbosa. The Suns hadn't lost since March 12 against the Los Angeles Lakers, but were at the end of a five-game trip.
"This is this worst team to play on the last game of a [long trip]," Steve Nash said. "They needed this win and we've been on a long road. It's a tough team to face at this juncture of a trip."
The Suns were held to 98 points after scoring over 100 in six straight games, and shot 36.1 percent in the first half.
"When we don't shoot well, we struggle, but [Milwaukee] did a good job," Suns coach Alvin Gentry said.
Milwaukee rebounded from back-to-back close losses on the road.
"We had a couple tough losses, but we were here to win this game tonight," Skiles said.
But the significant injury to Bogut could be a more serious loss for the Bucks, who have been one of the NBA's surprises this season and are trying to position themselves for the playoffs.
The Bucks only recently got over another unsettling injury, as Carlos Delfino played his second straight game Saturday after he was taken off the court on a stretcher during a March 26 loss to Miami.
With Milwaukee leading late in the second quarter, Bogut took a long outlet pass in for a fast break slam dunk. He hung on the rim afterward, was touched in the back by Stoudemire and crashed to the court. Bogut wrenched his elbow on the way down.
"I thought it was broken," Jennings said.
A flagrant foul was called on Stoudemire, and he was booed loudly by Bucks fans, but television replays showed what appeared to be relatively light contact with Bogut.
"The fans didn't have a clean view of what happened," Stoudemire said. "But I think once they see the replay they'll see that there was nothing intentional."
Jennings said he didn't think Stoudemire was trying to hurt Bogut.
"Amare doesn't seem like that type of person," Jennings said. "I think it was just an accident."
Bogut appeared to be in serious pain, briefly writhing on the floor before being helped to his feet by the team's medical staff. Hunched over and clutching his arm, he ran down the tunnel toward the locker room.
Bogut, the No. 1 overall pick in the 2005 draft, is having a standout season for the resurgent Bucks, averaging 15.9 points and 10.3 rebounds.
Bogut has shown ability on both ends of the court since he entered the league, but nagging injuries have hindered his development.
Despite losing perhaps their best player, the Bucks outscored the Suns 36-16 in the second quarter and took a commanding 58-34 lead into halftime.
Phoenix tried to rally in the fourth quarter, cutting it to 10 with 4:49 left.
But Thomas blocked a shot by Barbosa, Jennings made a pair of free throws to put the Bucks ahead by 13, and the Suns were called for a shot-clock violation with 3:04 left.
Bogut did not record a blocked shot before the injury, bringing his franchise-record streak of 38 games with at least one block to an end. ... Milwaukee had not beaten Phoenix since March 28, 2006. ... Goran Dragic scored 20 points on 7-of-12 shooting for Phoenix.
The Associated Press contributed to this report.