A boolean topos is a model of a kind of set theory, whose relationship with ZF is well understood (see here, for instance). In this answer we'll build a topos which has countably many nonempty sets $C_n$ with the strange property that $\prod_n C_n$ is empty, and hopefully we'll make this computation seem "obvious", or at least very doable. For this you might have to take some basic topos theory on faith, but you can learn more in the excellent book Sheaves in Geometry and Logic. In this answer we'll only work with boolean topoi (those which satisfy the law of the excluded middle), so we won't need to worry about the usual intuitionistic subtleties that can come up when doing topos theory.
First, for any group $G$ the category of $G$-sets is a topos. Indeed, given two $G$-sets $X$ and $Y$ we know how to take their product and disjoint union, the "powerset" of $X$ is the usual powerset where the $G$ action sends $A \subseteq X$ to $g \cdot A = \{g \cdot a \mid a \in A\} \subseteq X$, and the axiom of infinity comes from $\mathbb{N}$ with the trivial $G$-action.
Next we'll consider the subcategory of all those $G$-sets whose orbits are finite. Note that the inclusion into all $G$-sets is left exact and admits a right adjoint. Without the jargon, these (respectively, morally) say that
- If you compute finite products in the subcategory, that's the same as computing finite products among all $G$-sets, and every subset of something in this subcategory is already in the subcategory.
- If you have any $G$-set, you can turn it into a $G$-set with finite orbits by just throwing out any infinite orbits. This is a kind of "inverse" to the inclusion.
Now it's a theorem (Thm 8.4 on pg251 of Sheaves in Geometry and Logic) that in any such situation, the subcategory is again a topos, and the second condition tells us how to compute with it! Given some set-theoretic construction we want to do to $G$-sets with finite orbits, we can just do the construction worry free (using the fact that anything we do to a bunch of $G$-sets will give us a $G$-set), and then at the end of the day we throw out any infinite orbits to make sure we end up back in the "subuniverse" of $G$-sets with finite orbits.
Finally, I claim the topos of $\mathbb{Z}$-sets with finite orbits violates choice in the way you're looking for!
Indeed, consider the $\mathbb{Z}$-sets $\mathbb{Z}/n$, all of whose orbits are finite (there's only one orbit, of size $n$). So these sets all live in the topos of $\mathbb{Z}$-sets with finite orbits, and they're all nonempty. What happens if we take their product?
Well, to compute the product of elements we just compute the usual product as $G$-sets, and then throw out any infinite orbits! But we see that every orbit in $\prod_n \mathbb{Z}/n$ is infinite, so that when we throw out infinite orbits we're left with the empty set. That is, this topos thinks that
$$
\prod_n \mathbb{Z}/n = \emptyset
$$
even though all the things we're producting together are nonempty!
I definitely read this argument in a paper at one point, but for the life of me I can't find which paper it was... While looking I was able to find it as an exercise (Chapter 5, Exercise 5 on pg 163 of Johnstone's Topos Theory). There's also a subtlety that I'm not going into about the "external" vs "internal" axioms of choice in a topos, and the way you actually build something that looks like the cumulative hierarchy to get a model of ZF out of this topos. For instance, Freyd's famous The Axiom of Choice mentions that while the model I gave here violates the internal axiom of choice, if you use Fourman's construction of a cumulative hierarchy the resulting model of ZF will (counterintuitively) model choice (since the well founded objects in this topos are just those with the trivial $G$-action).
Of course, I think this is still a very instructive example to see how you might take a product of nonempty things and end up with something empty.
I hope this helps ^_^