Cause of crash...

...NOT ATC...
Read the report and you'll note that ATC weren't blamed - the point isn't apportioning blame - the point is picking out where "mistakes" were made, and how they can be avoided in future, so this doesn't happen to another 16 year old, or 43 year old or whatever. Ultimately it was the student lost control of the aeroplane as he attempted to fly with an abnormal configuration and low power setting.
However, if things had been done differently by those on the ground (not just ATC) then it probably would not have happened. Hence all the recommendations at the end of the report - mostly relating to the way ATC handle and know about inexperienced students, and maybe in future the flying club will have an instructor in the tower next to the aerodrome controller in future when solos are airborne - a quick intervention from him may have saved the day.
ATC did say "go-around", but the student never acknowledged it or the clearance to pattern altitude (circuit height), and ATC never repeated it
Exactly - I'm glad you've seen my point, that with such an inexperienced student there was no definitive order to go around - only the one mention in a long tranmission. Even now with several hundred hours, a non standard transmission, particularly if a controller has an accent of any sorts, it can be difficult to take all the information in.