Did you get to solve this problem? I have the same here...
I was ok until I added a couple of scripts in my header, taking care to keep charset in the first 1024, but PSI keep giving a critical issue to best practice, pointing a missing charset. But its there and well placed :
<!DOCTYPE html>
<html lang="fr-CA">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
Even if I remove the scripts I added under it! But here's something: I ran a test through Chrome Devtools with Lighthouse and it should reveal the same error than PSI but it is not...
So I'm at the stage of knowing that it's something more specifically related to PSI and not an actual problem with my website. But still, something somewhere is causing this problem as just before I added 2 new scripts, my best practice was all right with PSI...