For a picture I want to upload on last version of Discourse, max_image_size_kb and max_attachment_size_kb both at 4096, event if I set 20000 Kb, my picture (jpg) is 1.2Mo and I have this error:
Sorry, this file is too large (the maximum size allowed is 4096 KB).
I had exactly the same problem, but setting client_max_body_size in my reverse proxy fixed this.
But the error message displayed is misleading, because it tells the user the value set in max_image_size_kb and not the setting that is causing the problem. Maybe this could be changed to a better wording.