Harvard players, students and fans celebrate a win over Yale after an NCAA college football game at Fenway Park in Boston, Saturday, Nov. 17, 2018. Harvard defeated Yale 45-27. (AP Photo/Charles Krupa)
Harvard players, students and fans celebrate a win over Yale after an NCAA college football game at Fenway Park in Boston, Saturday, Nov. 17, 2018. Harvard defeated Yale 45-27. (AP Photo/Charles Krupa) Credit: Charles Krupa

Princeton, n.j. — John Lovett passed for 255 yards and three touchdowns, rushed for 123 yards and a score and led Princeton past Pennsylvania, 42-14, on Saturday to complete its first perfect season since 1964.

It was Princeton’s fourth outright Ivy League title, but its first since 1995.

Lovett was 20-of-28 passing and carried the football 20 times, scoring on the ground for an Ivy-record 20th straight game. All three touchdown passes went to Jesper Horsted, who made eight grabs for 165 yards, while topping a program record with his 194th career reception. Stephen Carlson also made eight catches for 79 yards.

Charlie Volker added 85 yards and a touchdown for Princeton (10-0, 7-0), which is ranked ninth in the FCS coaches’ poll. Horsted also had a rushing score.

Nick Robinson threw for two touchdowns for Penn (6-4, 3-4), which finished with a winning season for the fourth time since Ray Priore became the head coach.

Harvard 45, Yale 27

Boston — Tom Stewart threw for 312 yards and three touchdowns before being taken off the field in a stretcher as Harvard beat Yale at Fenway Park in the 135th meeting.

Stewart was injured on an option play as he slid and was hit by Yale defensive back Miles Oldacre. An injury report wasn’t immediately available.

Devin Darrington rushed nine times for 91 yards and two touchdowns for Harvard (6-4, 4-3 Ivy League), which had 605 total yards. Tyler Adams added five carries for 125 yards and a score, and Jack Cook made four catches for 116 yards and a TD.

Griffin O’Connor threw for 328 yards and a touchdown with two interceptions for Yale (5-5, 3-4). The Bulldogs were outgained, 293-83, on the ground.

Columbia 24, Cornell 21

New York — Freshman wide receiver Mike Roussos scored on an 87-yard kickoff return with 45 seconds left in the game after scoring on a 91-yard punt return in the first quarter, and Columbia rallied past Cornell.

Roussos’ second TD came just 13 seconds after Dalton Banks scored on a 2-yard run to give Cornell a 21-17 lead.

Roussos’ second special teams score of the day rescued the Lions.

Rhode Island 24, New Hampshire 21

Kingston, r.i. — Ahmere Dorsey returned a kickoff 95 yards for a touchdown, Momodou Mbye and D.J. Stewart had interceptions — all in the fourth quarter — and Rhode Island held on to defeat New Hampshire.

The Rams (6-5, 4-4 Colonial Athletic Association) had seen a 17-0 lead get whittled down to 17-14 after New Hampshire’s Carlos Washington scored back-to-back touchdowns on short runs.

Dorsey fielded the ensuing kickoff and took it 95 yards for the game-saving TD.

He became the first player with a combined 1,000 return yards in a single season in the program history.

The Wildcats (4-7, 3-5) Tommy Herion was intercepted twice inside the last five minutes, but Washington scored his third TD of the day with 53 seconds left, thanks to a pass interference penalty.

Rhode Island recovered the onside kick. New Hampshire will miss the FCS playoffs for the first time in 14 seasons. In a more unusual streak, the Wildcats, who had beaten Rhode Island seven straight times coming in, have not defeated the Rams in a season-ender since 2003.