There is no nickname on God's green earth that will make a person "a real man".* That comes from teaching by example what a real man is every single day for a couple of decades. There's a reason that there are lots of folksy sayings to point this out (e.g. "like father, like son" and "the apple doesn't fall far from the tree.")
I can see no serious problems with a nickname derived from a loving feeling and used lovingly. One of my sons had some mighty strange nicknames: "Boodie-Boo", "Boots", and "Pokey". The latter came about because when he was about three, we were all in a shopping mall where he was walking slowly, and I said, "Come on, Pokey, or we'll lose you", to which he responded, "I'm Pokey the Stranger." I doubt he knew what "pokey" meant, and it was so strange and funny that we called him Pokey the Stranger for a while (which he loved), which then got shortened to Pokey.
Another son was "Peasom", "Possum", and "Blossom" for a long time, because when I was pregnant, I referred to him as "Sweet Pea"; while he was indeed very sweet, after his birth it seemed he was too male to be a sweet pea, so it became Peasom, then (because language works this way) "Peasom Possum" and "Possum Blossom", among less strange nicknames. Neither my husband nor I thought this was emasculating in any way. He was just so much loved that just his regular name was not expressive enough of that love.
That said (and understood), there are lots of nicknames that aren't loving or kind. There are depersonalizing nicknames ("Kid", "Champ"), overly masculine nicknames ("Cowboy", "Stud"), over-achiever nicknames, etc. Avoiding them helps with self-esteem. Also, as A. bakker pointed out, only use loving nicknames when there's no harm of humiliation in front of friends/family/others.
I guess all I'm saying is that in the course of life and loving a child, nicknames are born. They make someone feel loved. The first son I mentioned confessed to me recently that he likes it when I call him Boots, so I still call him that (he's 30 now, married, and has 2 kids.)
Names don't make a man "manly". A good life example does.
*Johnny Cash has a funny song about A Boy Named Sue.