Jonny May's try put England 16-9 up at half-time and the Red Rose led throughout the second half, but a converted try from Gareth Davies nine minutes from time pulled Wales level before Dan Biggar kicked a late penalty to complete an incredible turnaround.
The victory puts Wales firmly in charge of Pool A while realistically England will now need to beat Australia next Saturday if they are to reach the quarter-finals.
After a tentative spell, Wales suddenly sparked into life as George North left two defenders in his wake with a brilliant run through midfield but England broke out under pressure, as Watson drew a sprint race with Hallam Amos, which the Wales man just won to avert danger.
Wales lost key players with 15 minutes remaining as Scott Williams and Liam Williams both departed on stretchers while Amos was escorted down the tunnel with what looked like a problem with his arm.
England capitalised, as Farrell kicked his side into a seven-point lead, but just as they looked on the brink of victory Wales stunned the home side with a try, Gareth Davies latching on to a Lloyd Williams' kick and diving over.
Biggar converted to draw level at 25-25 with nine minutes left, but the drama was far from over as Wales earned a penalty on the halfway line, which the Red Dragon's number 10 drove high, hard and over the posts to claim an unlikely lead.
England rallied in the final moments, pushing forward for one last score, but Wales held on to inflict a devastating defeat on their fiercest rivals.
COMMENT RULES: Comments that are judged to be defamatory, abusive or in bad taste are not acceptable and contributors who consistently fall below certain criteria will be permanently blacklisted. The moderator will not enter into debate with individual contributors and the moderator’s decision is final. It is Belfast Telegraph policy to close comments on court cases, tribunals and active legal investigations. We may also close comments on articles which are being targeted for abuse. Problems with commenting? email@example.com