I don't want to minimize your friend's situation. But, a spousal visa is very different from being a permanent resident (maybe I am misunderstanding). If he got it through marrying a US citizen, there's a 3-year wait for naturalization and otherwise it's a 5-year wait.
Naturalization never required leaving the country, at least in my experience but things might have changed.
Naturalization never required leaving the country, at least in my experience but things might have changed.