The first thing to point out is that the products of the Cannizzaro reaction do not necessarily correspond to the most stable products, i.e. the reaction is not necessarily thermodynamically controlled. Instead, one should consider the transition state—a six-membered ring as taught generally in organic chemistry—and note that after the reaction the compound which formed the hydrate will end up as the carboxylic acid and the one which did not form a hydrate is reduced to the alcohol. The transition state is shown in figure 1 below.

Figure 1: transition state of the Cannizzaro reaction
Thus, the underlying question is which compound is more likely to form an aldehyde hydrate. You argued with the nitro group of 4-nitrobenzaldehyde exhibiting a strong $-M$ (mesomeric) effect. However, this mesomeric effect cannot, in fact, cross the $\ce{C-C(=O)}$ bond and thus cannot influence the carbonyl group as much as the simple $-M$ label implies.

Figure 2: some mesomeric structures of 4-nitrobenzaldehyde, demonstrating that the mesomeric effect cannot ‘cross the $\ce{C-C}$ bond’.
Now it is known that aldehydes with a more electron deficient carbon are more likely to form hydrates, hence why we are doing a mesomeric/inductive discussion in the first place. But since we actually do not have any $-M$ arguments that can help our case, we need to turn to $-I$ arguments. When considering inductive effects, distance matters much more so 3-nitrobenzaldehyde experiences a stronger $-I$ effect than 4-nitrobenzaldehyde. Therefore, this compound is hydrated more favourably and form 3-nitrobenzoic acid while the reduced product should be 4-nitrobenzyl alcohol.