Elementy UI takie jak np Widgety mogą mieć zmieniany stan TYLKO z głównego wątku aplikacji
(the Android UI toolkit is not thread-safe and must always be manipulated on the UI thread).
Zatem spinner.SetSelection(0) w Twoim kodzie jest niepoprawne.
Oczywiście jak każdy problem, tak i ten można rozwiązać na kilka sposobów. Najprostszy to:
runOnUiThread(new Runnable() {
public void run()
{
spinner.SetSelection(0);
}
});
Więcej do poczytania w dokumentacji: Painless Threading | Android Developers
Polecam szukać najpierw w dokumentacji bo tam jest (prawie) wszystko, a dopiero potem pytać na forum.