I just had the exact same problem with Lambda, Python, and trying to get Pillow to work. After much searching around, I came across this article that explained the problem, and provided a great solution.
https://medium.freecodecamp.org/escaping-lambda-function-hell-using-docker-40b187ec1e48
Basically, you can run docker on your Mac, which allows you to run a Linux instance. Then using pip, install whatever library you want to use. You can then include those files in your ZIP file and upload it to Lambda. Works like a charm.
These docker images approximate the AWS Lambda environment pretty accurately. You can use them to create packages.