I think that Haven does sound too feminine for a boy, but thats just my opinion. If you want something similar, I think Hayden is more generally accepted as a unisex/boy name. There are just a lost of little girls around named Heaven or Nevaeh (heaven backwards) and I think a boy with a similar name would get teased.