This is mostly for logical separation of features, routes and "switching".
hub-to-hub tunnel is where you would receive a bigger summary route and where you will forward unknown NHRP requests.
Having two separate tunnels also helps scale better in terms routing protocol broadcasts/mcasts, but one can argue that BGP would not be affected ;-)
I would not recommend having one tunnel interface although you could achieve a functioning (but maybe less scalabale) setup.
M.