The visitors could have taken the lead in the fourth minute when Gabriel Torres beat his man on the edge of the area and tried to guide a shot into the top corner, but his effort went just over the bar.
The Rapids came close again as Buddle managed to wrestle the ball away from a defender and turn, but he couldn't beat Julio Cesar from a tight angle.
After the break, De Rosario had another great chance to hand his side the lead, but from close range he headed over after latching onto Jackson's header into the six-yard box.
Kyle Bekker came within inches of putting the home side in front as he fired a free kick from 25 yards which bent around the wall but struck the post and bounced clear.
The Rapids took advantage of their luck as they took the lead in the 77th minute through Buddle as he turned in Dillon Powers's cross in at the near post after a scramble in the area.
Toronto nearly snatched a point late on but Bekker was again denied by the woodwork from another free kick, which condemned them to defeat.