Hello Gerald Ortiz Candela
Thanks for your question.
No, It is not mandatory for Ingress Controller to Have Public IP.
Yes, Standard and Standardv2 tiers support VNet integration and can be used to connect APIM with an ingress controller using a private IP. You need to Integrate your APIM instance into the same VNet as your AKS cluster and configure it in Internal mode for private communication.
See: https://learn.microsoft.com/en-us/azure/aks/concepts-network-ingress?source=recommendations
You can mark it 'Accept Answer' and 'Upvote' if this helped you
Regards,
Abiola