Is Zorn's lemma applicable to this integration problem?
An argument along these lines can be made to work, though it seems rather awkward to force it into the framework of Zorn's lemma and it can be described more simply and naturally using transfinite recursion. The main obstacle to making the idea work is that there is no reason to believe that your limiting function $\Phi$ is in $\mathcal{F}$. So, you cannot simply repeat the procedure past that $\Phi$ if $\int \Phi<\int f$, since once you get past $\Phi$ the functions you are constructing are no longer elements of $\mathcal{F}$. (Moreover, you should not expect the procedure to work in the way you describe, since as you suggest, it would end up giving an element of $\mathcal{F}$ that is actually equal to $f$ almost everywhere. This is a much stronger conclusion than what you are asked to prove, and it is easy to come up with examples where it is not true. For instance, $\mathcal{F}$ could consist of the simple functions, and it is certainly not true that any nonnegative measurable function has to be equal to a simple function almost everywhere.)
The trick to fix this is to replace $\Phi$ with $\Phi_n$ for sufficiently large $n$ in the "next step". Specifically, suppose $\int \Phi<\int f$, and we take $\varphi\in \mathcal{F}$ with $\varphi\leq f-\Phi$ and $\int\varphi>0$. We would like to now replace $\Phi$ with $\Phi+\varphi$, but that might not be in $\mathcal{F}$. However, we can instead take $\Phi_n+\varphi$ for some large $n$. If $n$ is sufficiently large, then $\int(\Phi_n+\varphi)$ will still greater than $\int\Phi$, and so we still have gotten closer to $\int f$ using elements of $\mathcal{F}$.
So, then, here is the full argument. We iterate this construction by transfinite recursion, constructing a sequence of functions $(\varphi_\alpha)$ that are in $\mathcal{F}$ and below $f$. At successor steps, if $\int\varphi_\alpha=\int f$ we are done, and otherwise we apply property (c) to $f-\varphi_\alpha$ to get $\varphi\in\mathcal{F}$ with $\varphi\leq f-\varphi_\alpha$ and $\int\varphi>0$, and we take $\varphi_{\alpha+1}=\varphi_\alpha+\varphi$. At limit steps, we first take a limit of functions and then use the trick above to get an element of $\mathcal{F}$. Specifically, suppose $\alpha$ is a countable limit ordinal and we have already defined $\varphi_\beta$ for each $\beta<\alpha$. Enumerate the ordinals less than $\alpha$ as $(\beta_n)_{n\in\mathbb{N}}$ and let $\Phi_n=\max(\varphi_{\beta_0},\dots,\varphi_{\beta_{n-1}})$, and let $\Phi$ be the limit of this increasing sequence $(\Phi_n)$. If $\int\Phi=\int f$, we are done, since each $\Phi_n$ is in $\mathcal{F}$ and $\int\Phi_n\to\int\Phi=\int f$. If not, as in the previous paragraph, we can apply (c) to $f-\Phi$ and then take $n$ such that the resulting function $\Phi_n+\varphi$ still satisfies $\int(\Phi_n+\varphi)>\int\Phi$. We then define $\varphi_\alpha$ to be this $\Phi_n+\varphi$. Note that this $\varphi_\alpha$ satisfies $\int \varphi_\alpha>\int\Phi\geq\int\varphi_\beta$ for each $\beta<\alpha$.
If this transfinite recursion never terminates by reaching either a case where $\int\varphi_\alpha=\int f$ (in a successor step) or $\int\Phi=\int f$ (in a limit step), then it constructs a sequence $(\varphi_\alpha)$ over all countable ordinals $\alpha<\omega_1$ such that $\int\varphi_\alpha<\int\varphi_\beta$ whenever $\alpha<\beta$. This is impossible, since there is no strictly increasing sequence of real numbers of length $\omega_1$. So, we must eventually reach $\int\varphi_\alpha=\int f$ or $\int\Phi=\int f$ at some step, and the result is proved.