Or just download them and serve them from your own domain. If you enable HTTP/2 there is little to no advantage of using a third party for hosting fonts.
No. Well, maybe, if you're using one of the most popular fonts, but each combination of weights is a seperate CSS file, that's probably a unique combination and only cached for 24 hours. A reason not to use Google fonts is that it's just another tracking tool in their arsenal. For each request, cookies are sent to Google's servers, so they have enough reason to avoid cache hits.