Unable to provision resources in sequence on AWS

I’m trying to provision VPC, CIDR Block, Internet Gateway, NAT Gateway, Subnets, NACLs, Security Groups, Windows EC2 instances, AWS Managed AD, KMS CMK for encrypting EBS volumes attached to EC2 instances, but facing errors stating that VPC has reached the maximum limit, and Internet gateway has reached the maximum limit.

When analyzed the code, it was found that VPC and Internet gateway gets created multiple times from each module. Please advise how to provision the above resources in sequence.