Sono riuscito a risolvere il problema circondando la query corrente con un'altra query e trascinando ORDER BY RANK nella query esterna. Così:
SELECT *
FROM (SELECT 4*SCORE(1) + 2*SCORE(2) + SCORE(3) AS RANK
FROM images i
WHERE CONTAINS(i.subject, 'testing', 1)>0
OR CONTAINS(i.place, 'testing', 2)>0
OR CONTAINS(i.description, 'testing', 3)>0)
ORDER BY RANK;