W drafcie NBA w 2004 r. został wybrany z numerem 20. przez Denver Nuggets, lecz wkrótce został wymieniony do Orlando Magic za wybór w pierwszej rundzie przyszłego draftu. W drużynie Magic debiutował w sezonie 2004/05, występując głównie jako zmiennik rozgrywającego Steve’a Francisa. Pod koniec sezonu, kiedy Francis został przesunięty na pozycję rzucającego obrońcy, Nelson zajął jego dotychczasowe miejsce głównego rozgrywającego. Został wybrany do drugiej piątki najlepszych debiutantów NBA. Jego pozycja w Orlando Magic umocniła się, kiedy w lutym 2006 Francis przeszedł do New York Knicks. W sezonie 2008/09 został on nominowany jako rezerwowy do All-Star Game oraz konkursu Skills Challenge podczas Weekendu Gwiazd. Nie mógł tam jednak wystąpić z powodu kontuzji barku. Do gry po kontuzji powrócił dopiero na pierwszy mecz finałów 2009, w których Magic przegrali z Los Angeles Lakers 4–1.

30 czerwca 2014 został zwolniony przez Magic. 24 lipca 2014 podpisał kontrakt z Dallas Mavericks.