ok, so the problem was that when checking what type of FS access to get wp compares
owner on __FILE__ constant
/var/www/html/wp-admin/includes/file.php
with a temp file
/var/www/html/wp-content/temp-write-test-1513759002
I hade only set owner to www-data on wp-content, so the compare was a miss causing it to fallback to ftp access. Setting owner in wp-admin as well solved it.
@bcworkz thanks for pointing me in the right direction.