I really like the nickname 'honey'. I call my boyfriend this all the time. I think it sounds really lovely for either gender, and I don't think any offence can be taken by it. You don't want to go overboard, especially if your relationship is new, in case the guy takes it the wrong way!
Other options include 'sweetie', 'cutie', 'baby', 'babe', 'boo' and... The most talked-about nickname of the year:
You might not be too keen on 'bae' though. Apparently, it stands for 'before anyone else' but people often use it as a different word for 'sweetie'. According to the Urban Dictionary, it's 'a Danish word for poop'. Hmm. You can find out more about 'bae' on another question on Blurtit about it here.
There's been a lot of controversy about the nickname 'bae', and it's been met with a lot of parody videos. Like this one about what to do (or what not to do) when you finally meet your bae...