My RDS is not in Amazon VPC and my lambda is in Amazon VPC.
This is going to cause you lots and lots of pain.
Can your Lambda function communicate to the Internet? That’s what it will need to even attempt a connection to your RDS instance, if it’s not in your VPC.
This sounds like a very non-standard, complicated, and probably insecure setup (e.g. public-facing database), is there any chance you can simplify it?