Zellweger speelde gedurende zijn spelersloopbaan voornamelijk voor FC St. Gallen, daarnaast speelde hij kort voor 1. FC Köln, FC Wil 1900 en Brühl St. Gallen. Voor laatstgenoemde profclub was hij tussen 2012 en 2015 conditietrainer.
Zellweger maakte zijn debuut voor Zwitserland in 2000 en speelde in totaal 13 interlands waarin hij niet tot scoren kwam.