The Trojans (2-0) did not lead by more than five points until the final three minutes and trailed the Bison for more than half the way before taking control in the final stretch.
North Dakota State (0-2) got into passing lanes to generate 14 USC turnovers -- nine in the first half -- and freshman Cameron Hunter paced a confident Bison offense with a career-best 24 points.
North Dakota State also took advantage of a dismal 17-of-31 free-throw shooting from USC.
Boatwright's interior scoring and game-high eight rebounds buoyed the Trojans through lulls long enough for Chimezie Metu and Elijah Stewart to chip in 14 and 10 points in intermittent surges.
The Bison extended their lead to five points with 9:29 remaining when forward Deng Geu put down the second of two consecutive dunks.
Jordan Mathews connected on back-to-back jumpers -- a 3-pointer and a long two -- to force a tie at the under-eight-minute media timeout. The Trojans never trailed again.
North Dakota State built a 10-point lead in the first half, but USC whittled away at the deficit with a 12-2 run in the final 3:02. Stewart found guard Jordan McLaughlin in transition off a steal to set up a layup just before the buzzer, forcing a halftime tie.
McLaughlin finished with 12 points and a team-high four assists, and matched Boatwright with eight rebounds.
Jared Samuelson and Paul Miller scored nine and seven points for North Dakota State. Tyson Ward finished with seven points, a game-high five assists and tied the game-high of eight rebounds.
NOTES: North Dakota State led for 20:10, all in the first 30 minutes. ... USC shot 54.8 percent from the free throw line, its worst total since shooting 53.8 percent in a loss to Utah last January. ... USC outrebounded North Dakota State 41-30.