It depends on what you mean by "develop with HTML 5". If it's a standard web app (or mobile web app) then yes, you can't use native functionality as you're limited to what HTML 5 offers. That's more and more these days, though, including geo location:
http://www.w3.org/standards/techs/js#w3c_all. If you need the web app to have hooks into native code, check out Apache Cordova.
I'm sure the home page of Titanium does a good job of listing its advantages. It's based on JavaScript, though, not
Java, if memory serves.
Also note that cross-platform approaches like Titanium and Cordova tend not to look quite as natural on any platform as apps that have been specifically developed for a platform. That may or may not be a concern for you.