The problem was more precisely that thermal variations combined with the way the heatsink was attached and pushing on the middle of the CPU repeatedly warped the board due to thermal expansion, causing the balls to unseat. Heating the thing would help reseat the BGA thanks to thermal expansion but would certainly not reflow soldering (not enough heat).
The proper fix was to try to reseat the BGA by whatever means and change the way the heatsink was attached so that pressure on the BGA/board was even. I did that on two units and they survived for years after their first RRoD, and on a third unit right from the get go, and that one never suffered of any issue.