Sharing Jupyter notebooks within a team
JupyterHub does not provide version control system nor facilitates sharing of Notebooks. You mentioned yourself limitation of Binder.

Try Zeppelin. Version 0.7 should be released within a few next days. 


As you can see from the roadmap, this version delivers "enterprise" features which are exactly about collaboration.
Version control system (git) is integrated.
It's self-hosted.


In essence, I think it meets all requirements you posted. On top of that it delivers richer visualisation capabilities and plethora of other features (works with Shiro, Knox, Kerberos - secure Spark anyone?).