Выяснилось что исполнении руками через бинарник ansible на локалхост (ansible localhost -m setup -a 'gather_subset=min') находится то что нужно. После того как я внимательно перечитал вывод своего плейбука и сравнил с тем что получил перед этим выяснилось что become: true мешает процессу получения IP. Рабочий плейбук в результате оказался таким:
---
- hosts: localhost
become: false
gather_facts: no
pre_tasks:
- setup:
gather_subset: 'min'
tasks:
- debug: var=hostvars[inventory_hostname]['ansible_env'].SSH_CONNECTION.split(' ')[2]
Причина потерянного времени - невнимательность. Надеюсь, эта информация окажется для кого-то полезной.