Maybe the text you quote is a bit misleading in that it uses counterfactuals ("if we had f...") which we could be tempted to interpret in terms of possibility and necessity as you do (since you talk about necessary conditions).
However the right interpretation to have of the text is not in terms of possibilities but of hypothesis: "if we had f" means "let us make the hypothesis that f is true to show a contradiction".
I can't be sure but I suspect that you're not convinced by the explanation because you interpret it in terms of necessity and possibility, not as a demonstration by contradiction.
I don't think one should talk about necessary and sufficient conditions here because first order logic is only about what is actually the case or not. For necessity statements, one should use modal logic, not first order logic. "f->w" does not say that w is necessarily the case when f is true, it only says that it's not actually the case that f is true and w is false. Talking about necessary or sufficient conditions only brings confusion.
Modus tollens can be explained intuitively as follows: if it's not the case that f is true and w is false, yet w is false, then it's not the case that f is true.
Having said that, it is true that an analog of modus tollens transforms necessary conditions into sufficient conditions.
"w is a necessary condition for f" means that w is required for f to occur although it might not be sufficient.
As an example, imagine you need a passport to enter a country. It is necessary but not sufficient (you must not be blacklisted, you must not carry food, etc...).
If w is necessary for f, then it suffices that w is false for f to be false.
In the example: not having a passport is a sufficient condition to be rejected at the frontier.
So something like a modus tollens indeed transforms the negation of necessary conditions into sufficient conditions and thus this is not the right way to flesh out your intuition about what could be wrong with the text.