My company is new to AWS and I've been piloting a development effort to build a lambda function. I've finished my coding and I need to hand it off to another team. How can I allow another team member to access/run/execute/develop/etc... the lambda function from their account?
If you just want them to invoke the Lambda cross account, which was your original question, then you can delegate access to an IAM user (or all users) in the other AWS account so that they can assume a role in your account and invoke the Lambda function in your account.
Technically, you could just add IAM users to your account and give them credentials, but that is not a best practice. Cross-account roles are preferred.
But is this really what you want? It would not allow them, for example, to update the Lambda function. You need to think about what their responsibilities will be. If they are going to maintain the Lambda function then it's more likely that they should deploy the Lambda function into their account and you give their Lambda function cross-account access to whichever resources it needs in your AWS account.
If you want to share development then use a shared code repo (like GitHub or CodeCommit) and create a process, automated or otherwise, for packaging and uploading the Lambda function to your account. Again, they may need to be able to assume a cross-account IAM role in order to update and/or invoke your Lambda function.
At a higher level, if what you’re building here is actually a serverless application with an API, then consider using the serverless framework or AWS SAM, with API Gateway, for development, packaging, and deployment.
On your question about account structure, this is taking us far from the original question, so I'd recommend further reading, for example here and here. There are plenty of opinions on account strategy, some of which may be a good match depending on your needs.