Yes, Cloudflare applies gzip and brotli compression to some types of content. We also gzip items based on the browser's useragent to help speed up page loading time.
If you're already using gzip we will honor your gzip settings as long as you're passing the details in a header from your web server for the files.
Cloudflare only supports the content types gzip and None towards your origin server and can also only deliver content either gzip compressed, brotli compressed, or not compressed at all. Cloudflare's reverse proxy is also able to convert between compressed formats and uncompressed formats, meaning that it can pull content from a customer's origin server via gzip and serve it to clients uncompressed (or vice versa). This is done independent of caching.
Please note: The Accept-Encoding header is not respected and will be removed.
Related: What will Cloudflare compress?