The Crusaders racked up 522 total yards, while holding Dartmouth to 224 yards.
Nick Schwieger rushed for 112 yards and a touchdown on 22 carries for the Big Green (1-4), who have lost four in a row after beating Colgate in their opener. Three of their four losses have been by 8 points or fewer.
Lafayette 28, Yale 19 - Andrew Shoop threw two touchdown passes and Ryan O’Neil, the other piece of Lafayette’s two-quarterback system, ran for a score as the Leopards held off the visiting Bulldogs.
Shoop, who was 17 of 21 for 176 yards, threw a 7-yard TD pass to Kyle Hayes and a 20-yarder to Mark Ross as Lafayette (2-4) took a 21-9 halftime lead.
But Philippe Panico kicked a 24-yard field goal in the third quarter and Patrick Witt threw a 50-yard TD pass to Chris Smith, pulling Yale (3-2) to within 21-19 with 13:17 left. Four minutes later, though, O’Neil scampered 6 yards for the game’s final score.
Brown 34, Princeton 0 - Dan Smithwick returned an interception 36 yards for a touchdown 57 seconds into the game, and the Bears (4-1, 1-1) didn’t let up in Providence.
Colgate 35, Cornell 28 - Jordan McCord (87 rushing yards) scored on a 4-yard run in the first overtime for Colgate, and the Raiders (4-3) held the Big Red (2-3) scoreless on their OT possession to come away with the win in Hamilton, N.Y.
Penn 27, Columbia 20 - Quarterback Billy Ragone scrambled in from 7 yards for the winning touchdown with 25 seconds remaining to propel the Quakers (3-2, 2-0) past the Lions (0-5, 0-2) in New York for their 17th straight league victory.