Якобы из арабск. جوبة «длинный кафтан, халат» или греч. ζιπούνι «кофта, куртка».
Предлагаю иной вариант (вернее два):
1). От ЗЯБь, ЗЯБнуть, ЗЯБко (т.е. от того, чтоб не замерзнуть)
Но этот вариант я считаю неудачным...
2). От ПИНать, ПНУть, П(х)Нуть, П(х)Ать, ПИХать, вПИХивать, ПИСать, ПУСКать, ПУЩать, выПУЩать, ПАХать и пр.
Т.е. зипун - от за-п(х)нуть, за-пахнуть, за-пнуть (т.е. укрыться, спрятаться в данном случае... запахнуться-распахнуться)
А вот этот вполне подходящий и точно соответствующий назначению данного вида одежды) Впрочем: ЦЕПлять, сЦЕПить тоже может иметь место)