I think Bones thought she shouldnt call Zach Zacharoni was because its just not in her nature to give people cute little pet names. I think she realised after calling him Zacharoni the first time why it was she never gave anyone a pet name before....its just not something she does/who she is.
It would also be weird for her because she's his boss (later colleague). Even Cam calling people by a pet name is a little weird, and that's saying something. (:
Also, Brennan does give pet names on occasion, or at least uses nicknames. She calls Angela "Ange," though that's pretty commonplace.
I think that they said she shouldn't call him that because it felt awkward because Bones never creates these personal names and is always professional in her lab.