tensor product of sheaves commutes with inverse image
I figured it out: let $\mathcal{P}$ be a sheaf of $\mathcal{O}_X$-modules. It is easy to check from the definition of $\mathscr{H}om$ and the adjointness of $f^*$ and $f_*$ that $f_*\mathscr{H}om(f^*\mathcal{N},\mathcal{P}) \cong \mathscr{H}om(\mathcal{N},f_*\mathcal{P})$, and then we see that
\begin{align*} \text{Hom}(f^*\mathcal{M} \otimes_{\mathcal{O}_X} f^*\mathcal{N},\mathcal{P}) &\cong \text{Hom}(\mathcal{M},f_*\mathscr{H}om(f^*\mathcal{N},\mathcal{P}))\\ &\cong \text{Hom}(\mathcal{M},\mathscr{H}om(\mathcal{N},f_*\mathcal{P}))\\ &\cong \text{Hom}(f^*(\mathcal{M} \otimes_{\mathcal{O}_Y} \mathcal{N}),\mathcal{P}) \end{align*}
So $f^*\mathcal{M} \otimes_{\mathcal{O}_X} f^*\mathcal{N}$ and $f^*(\mathcal{M} \otimes_{\mathcal{O}_Y} \mathcal{N})$ represent the same functor, whence they are canonically isomorphic.