I think it's important to note that google's recommendation here is about how to make your application more performant when calling google apis
Google's apis have a lot of fields and they have many different customers using them for many different reasons. Adding a field filter will save them and the client lots of bandwidth.
However, the same might not be true for your api.
If your objects are small
Limiting the fields will have less of an effect on bandwidth and bandwidth might not be your performance bottleneck.
If you have few, or control your own clients
You can customise the endpoint to return exactly the data the client needs without the client having to specify a dynamic list of fields.
If the client makemakes use of cached responses
Sending all the fields may be preferable to making two or more calls to the same endpoint.
If you do want to go ahead and implement field filtering then, as you point out, you immediately bump into the problem that filtering the fields may well increase the processor demand of your api.
It will be a case by case problem of whether to filter on the database, output or elsewhere.