Как разрешить доступ к MongoDB, которая находится в Docker'е, только определенным ip адресам?
Через iptables и делается. Все правильно пробовали.
Осталось только чуть больше исследовать тему. Вам нужно использовать FORWARD chain, а не INPUT, а INPUT только если Вы делаете --network=host.
Эта статья должна прояснить ситуацию:
tomasre.com/2016/03/07/securing-coreos-with-iptables
Вам "не удалось" перебороть настройки не докера, а того же iptables, только таблицы не filter а nat.
Соответственно и копать нужно туда. Докер просто использует те же самые правила что и вы. 
Но - я не знаю что будет если вы их поменяете а потом перезапустите контейнер например. Вполне возможно что ничего хорошего.
Сам подобным вопросом недавно интересовался, но не доразбирался можно ли так сделать. Так что если решите данную проблему - отпишитесь пожалуйста как вы это сделали. Тоже интересно :)