I hope I'm not the only one who thought of the warrior Hannibal when I read this. If I were, I'd be disappointed.

I don't see too much harm in naming him that; teasing builds character. Just remember though, a very unique and outstanding name like that will be very inviting for teasing, so you may want to take that into consideration. Some names can be shortened to avoid that, but the only thing I can think of for Hannibal is "Han", which is really not any better in that regard.
But hey, if you love the name, go for it. It's not my kid, so my advice should be taken with a grain, nay a block, of salt.