For example, when creating a container engine, it asks for my machine type and memory. If I pick 1 vCPU & 3.75gb ram X 3 (3vCPU total & 11.25GB ram total), how do those resources relate to the pods that will do the work?
Say I add 4 pods, does that mean I will now get billed for 4x cpu and 15 gigs of ram? Or is the 3xCPU a hard limit and will those 4 pods have to find a way to run on the 3 cpus?
The number of pods does not affect the price.
In the example above you are given 3 CPUs. These can be split among the pods you run.
When you create pods you can set memory and CPU limits. These will allow you to limit usage: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
Google doesn't charge a separate fee for container engine if you are creating container cluster with 5 vms or less. You are charged only for virtual machines.
Usually a basic container cluster is created with 3 nodes(vm). Hence you will be paying for 3 machines. The pods you create can be load balanced across these virtual machines. Google doesn't care what you do within the cluster.
Since a pod instance runs on a vm, the vm limits are the hard limits for the pod. Hence if you intent to run multiple pods on a vm, you need to do some basic capacity planning to ensure that your pods doesn't run out of memory.
In my experience, even the 1vCPU VM (Configured in 3 node cluster) can handle a couple of docker container pods running Java spring boot applications. Note that the Kubernetes components also run on the cluster nodes.