As more solutions are leaveraging AWS accounts as the demarcation line between determined change and fault domains within solutions the association of private Route53 zones between these fault domains has become more difficult. The common senario where this is encountered is when the engineering or SDLC tooling environments DNS needs to be propergated to other environments to facilitate Continious Delivery practices.
This activity is able to be done, not through the console but leaveraging the underlying AWS API as documented by Amazon: https://aws.amazon.com/premiumsupport/knowledge-center/private-hosted-zone-different-account/
This approach is not supported by current versions of Terraform, and current GitHub issues suggest that this could a large amount of work. The easiest way to solve this is to make the required calls using {{ awscli }}. This can be done in terraform in a managed approach using the {{ null_resource }} resource.
Lets imagine that that VPC-A (vpc-a.tf) has hosts that need to be referenced by VPC-B (vpc-b.tf) these 2 VPCs are contained in seperate VPCs. In this senario VPC-A would authorise VPC-B to have the ability to associate the zone and then VPC-B will perform the association.
This is expressed in terraformlike so, but be aware this adds a dependency for the awscli of each user of Terraforn