Pierwszy sukces w karierze John Nicholson osiągnął w 1970 roku, kiedy zdobył złoty medal w sprincie indywidualnym podczas igrzysk Brytyjskiej Wspólnoty Narodów w Edynburgu. Dwa lata wcześniej wystartował w tej samej konkurencji na igrzyskach olimpijskich w Meksyku, gdzie odpadł w eliminacjach. Kolejny medal zdobył na igrzyskach olimpijskich w Monachium w 1972 roku, ulegając jedynie Francuzowi Danielowi Morelonowi. Drugie miejsce wywalczył także na torowych mistrzostwach świata w Montrealu w 1974 roku, przegrywając tylko z Duńczykiem Pederem Pedersenem. W tym samym roku brał też udział w igrzyskach Brytyjskiej Wspólnoty Narodów w Christchurch, zdobywając złoto w sprincie i srebro w wyścigu na 1 km. W swej koronnej konkurencji Nicholson zwyciężył ponadto na mistrzostwach świata w Liège w 1975 roku oraz na rozgrywanych rok później mistrzostwach w Lecce. Ostatni medal wywalczył podczas mistrzostw w San Cristóbal w 1977 roku, gdzie rywalizację w sprincie zakończył na trzeciej pozycji, za dwoma Japończykami: Kōichim Nakano i Yoshikazu Sugatą. Dwukrotnie zdobywał mistrzostwo kraju (1975 i 1976), startował także w wyścigach szosowych, wygrywając między innymi kryterium w Creswick w 1988 roku.