Finally I solved my problem, I share my conclusions here if the same thing happens to someone:
My "Leverage Browser Caching" was bad because of my images.
I thought this was happening because I was writing the wrong code (spaces, tabs, order, etc.) in
httpd-app.conf where I say the expiration time.
But it was not any of that, I discovered that there was a plugin called WP offload S3 Lite installed, this turned out that when I uploaded the image, even though it looks like it's in WP, it actually was in an S3 bucket.
So I had already said previously in the excerpt:
To change the cache duration for an individual object, you can configure your origin to add to Cache-Control max-age or Cache-Control s-maxage directive, or Expires header field to the object
But I had not yet associated that my pictures were elsewhere.
That is, all I had to do was access my image in S3 and add Cache-Control:
So everything that was written here really works and is right:
@jsalmeron, @dbarranco and @jariza thanks for the help!!! And sorry for any confusion I may have caused, all your information was helpful.