What puzzles me is that the ESTA application was approved in the first place. If they were going to deny him entry, why approve it? Could there be a more benign explanation for this issue? For example: his ESTA approval expired (it's valid for two years), or the data entered on the ESTA form did not exactly match his passport data (special characters, middle names, etc.)
Filling out the ESTA form does not grant a visa, does not grant the right to enter the US, and does not even guarantee you'll be allowed onto the plane. It simply says "Yes, you appear to be a citizen of a country which, in general, has visa-free entry to the US".