The Royals (9-13-1, 3-6 ODAC) erased a 3-0 deficit with two runs in the sixth and two more in the seventh before putting up a four-spot on the Hornets (9-5, 5-3) in the eighth.
Shenandoah scored three runs in the fourth thanks to a throwing error on a two-out strikeout followed by a walk and a two-run single to right by Grant Thompson.
The offense was not enough as the Hornets walked in a pair of runs in the sixth before Eastern Mennonite scored two runs on two hits in the seventh.
The Royals pulled away with four runs on four hits in the eighth.
Ethan Mathews (3-0) was the winner in relief for EMU. He scattered four hits in 2 1/3 innings.
The win snaps a 16-game winning streak by SU over the Royals. Shenandoah had not lost to Eastern Mennonite since a 4-3 loss in Harrisonburg on March 25, 2011 and SU is 41-5-1 lifetime over the Royals.
Shenandoah is tentatively scheduled to host Franklin & Marshall on Thursday at 4 p.m. Thursday's he previously scheduled game at Frostburg has been cancelled.