Thanks everyone for the suggestions.
In the end, I reasoned that the nut on one or both ends of the axle had to be removed. Fortunately the nut at the freehub end loosened very easily, after which the freehub pulled off with only moderate force.
Edit : I just remembered I actually gently tapped the axle through while holding the freehub.