The Sixers wasted a 14-point lead and Portland took the lead late in the fourth. Holiday, though, rallied the Sixers and stretched the lead to 101-97 on a pair of free throws.
Damian Lillard hit a 3-pointer to cut it to 101-100. Holiday fell on the inbound pass and the ball sailed into the Sixers bench, giving Portland the ball with 7.1 seconds left. LaMarcus Aldridge missed the potential winner on a turnaround over Hawes.
Aldridge had 32 points and 14 rebounds, and Lillard scored 27 points.
The Sixers got the win hours after they announced center Andrew Bynum will have season-ending arthroscopic surgery on both knees Tuesday. Bynum has not played this season because of bone bruises in both of his knees.
After Portland rallied for the lead, Holiday, Hawes and Thaddeus Young hit three straight shots for a 97-92 advantage with 1:07 left. Aldridge's 3-pointer with 17 seconds remaining cut it to 99-97. Holiday then hit two free throws for a five-point cushion.
Portland seemed to catch a break after Philadelphia's inbounds pass was a turnover. Aldridge had dominated Hawes for most of the game but his last-chance shot hit off the back of the rim.
Young scored 19 points and Dorell Wright had 16 for the Sixers.
No other Trail Blazer hit double digits. Lillard shot 5 of 7 on 3-pointers.
The Trail Blazers wiped out a 14-point deficit when Eric Maynor and Lillard hit 3-pointers on consecutive possessions to tie the game at 82.
Holiday, Philadelphia's All-Star guard, hit his third 3 of the game to help the Sixers take the lead back.
Wesley Matthews tied it on a layup after Hawes lost control of the ball. Luke Babbit at last put the Trail Blazers ahead with a 3 for a 90-87 lead.
But the lead didn't last. With the Sixers' postseason hopes long over because Bynum's crushing injury, they haven't folded. The beat Brooklyn, Indiana and Portland, and took the Heat down to the wire in a 3-1 homestand.
Now, the bad news for the Sixers. They play 12 of their final 16 games on the road. The Sixers have dropped 13 in a row on the road since beating the Los Angeles Lakers on Jan. 1 and are 6-23 overall.
Portland hoped to make up ground in the playoff race as it opened a five-game road trip. The Trail Blazers entered only 3½ games behind Los Angeles for eighth place in the Western Conference. Up ahead: games at Milwaukee, Chicago, Atlanta and Oklahoma City.
All those teams are pointed toward the postseason, so they couldn't afford to slip up in Philadelphia. But they did.
Aldridge, coming off a 31-point game against Detroit, did his part to keep Portland in the hunt in the first half. He went straight over Hawes on just about every possession and scored 18 points in the half. Portland made seven straight field goals in the first quarter to take a 58-50 lead into halftime.
Notes: The Sixers made 10 of 13 free throws and Portland was only 12 of 14. ... Holiday hit three 3s. ... The Sixers shot 50 percent from the field (43 of 86).