You need a firewall with URL filtering. m0n0wall can only handle IP addresses.
Because services like Google are hosted on server farms and the IP addresses of those servers are due to change,
it won't help you to allow only the IP addresses of Google that YOU know.
Another point is that there are servers that are hosting more than one single site. Because normally all the hosted sites are reachable through one IP address, simple IP filtering won't help you, you need URL filtering.
Try "untangle". You can find it via the
http://m0n0.ch/wall/ page, look for the animated .gif at the right side.