Using the splitting principle (see [Hartshorne, Appendix A] one may compute Chern classes as if the vector bundle admitted a filtration by subvectorbundles with line bundles as intermediate quotients. (The point is that taking the projectivization of your line bundle splits a line bundle off the pull-back of your original bundle. Repeating this results in a complete filtration as above and then using the projection formula one can recover intersection numbers of Chern classes of the original bundle).
For a filtration as above, the Chern polynomial is just the product of the linear Chern polynomial of the subquotient line bundles. In other words, the splitting principle assigns $r$ "first" Chern classes to a rank $r$ vector bundle and each Chern number can be computed from these taking appropriate combinations of intersection products. In particular, the top Chern class of the original vector bundle is the intersection of all of these $r$ classes.
The original bundle admitting a nowhere vanishing section corresponds to one of these line bundles and hence the corresponding class being trivial, which implies that their product is also trivial as you mention in the question. Other simple conditions that imply that one of these line bundles is trivial would imply the same. So for example if your bundle admits a subbundle such that the quotient bundle admits a nowhere vanishing section, then you get the same. Of course, this also follows from Tom Goodwillie's comment.
To get a condition that implies the top Chern class to vanish but be significantly different than some subquotient bundle admitting a nowhere vanishing section you only have to think about how can the intersection of $r$ codimension $1$ classes be trivial. One way is if you have too many of them with respect to the dimension, but I am sure this is not what you are looking for. However, it is quite possible that the intersection of these classes is trivial without any of them being trivial.
For a simple example, assume that $\dim X\geq 2$ and let $\mathscr L$ be a line bundle on $X$ such that $\mathscr L$ does not admit a nowhere vanishing section, but $c_1(\mathscr L)^2=0$. Then take for instance $\mathscr F=\mathscr L\oplus\mathscr L$. You can easily cook up other situations or conditions from this (For example $\mathscr F$ doesn't really have to be the direct sum, the line bundles don't have to be the same, etc.).