I ran across this option "force_apt_get: yes" - and that actually seems to have solved my problem.
I still wonder - if this behaviour is due to ansible using aptitude in stead of apt-get, why would any upgrade commnand cancel holds unless you are doing an dist-upgrade?
And also what is the rationale for changing important behaviour like this - especially without big warning signs in bright neon colors?
It has worked well - with apt module upgrades respecting and retaining holds- until ansible 2.6 at least. As far as I know, at least.