Well for what its worth, when you are targeting windows hosts, fetch works, but doesn't use ssh, it uses winrm. But I'm guessing you aren't using a windows vm?
A more viable option would be to add some kind of web server to your virtual machine and then retrieve files from it onto your ansible controller using get_url
I'm curious what's so bad about ssh connectivity in this case though - surely you make plenty of use of that controlling your machines via ansible?
Jon