The problem is that hydrogen reaches an explosive fuel air mix quickly while gasoline doesn't do that easily. Batteries are rather safe in comparison and they don't need an entirely new vehicle either. Using hydrogen for IC is as inefficent as gasoline, if not worse for the additional equipment needed to secure the hydrogen.