Cloud agnostic infrastructure automation better than terraform?
There are no "agnostic" products due to the dramatic differences of the design of the Cloud Services provided by different companies.

My best recommendation is to write your code to support the different cloud providers. Whether you choose Ansible or Terraform this can be done with Ansible Roles or Terraform Modules that are specific to the cloud provider. Just the same as you would write Ansible roles specific to Operating Systems or different scenarios.