Here's a proof of Ben's claim--I don't know where in Matsumura Ben is referring, but it's not too hard if you take two well known theorems for granted.
To se things up, let us first make a definition. If $f:X\to Y$ is a morphism, and $\mathscr{F}$ a quasicoherent sheaf on $X$ then define the flat locus of $f$ (with respect to $\mathscr{F}$) to be the set of $x\in X$ such that $\mathscr{F}_x$ is a flat $\mathcal{O}_{Y,f(x)}$ module.
Then a version of the theorem is then the following:
Theorem: Let $f:X\to Y$ be a finite type morphism between Noetherian schemes, and let $\mathscr{F}$ be a coherent $\mathcal{O}_X$-module. Then, the flat locus of $f$ is open.
The hard facts one needs to assume (and which are certainly in Matsumura I believe, but is easy to find online) are Grothendieck's Generic Freeness Lemma as you guessed:
Lemma(Generic Freeness): Let $A$ be a Noetherian domain, $B$ a finite type $A$-algebra, and $M$ a finitely generated $B$-module. Then, there exists some non-zero $f\in A$ such that $M_f$ is a free $A_f$ module.
as well as this following very technical, but very useful lemma about deducing flatness from flatness over a quotient:
Lemma(Gross Technical): Let $A\to B$ be a morphism of Noetherian rings. Suppose that $I$ is an ideal of $A$ such that $IB$ is contained in the Jacobson radical of $B$, and that $M$ is a finitely generated $B$-module. Then, the following are equivalent
$$\begin{aligned}& (1)\quad M\textit{ is flat over }A\\& (2)\quad M/(IB)M\textit{ is flat over }A/I\textit{ and }\text{Tor}_1^A(M,A/I)=0\end{aligned}$$
The proof of this, I will admit, is really horrendous. Or, at least the one I know is. That said, it does show up somewhat often in certain circles.
Now, we only need one more result before we actually prove the main theorem, but one which is much easier than the above two results
Theorem: Let $A$ be a Noetherian ring, $B$ a finite type $A$-algebra, $M$ a finitely generated $B$-module, $\mathfrak{q}\in\text{Spec}(B)$, and $\mathfrak{p}$ the image of $\mathfrak{q}$ under $\text{Spec}(B)\to\text{Spec}(A)$. Suppose that $M_\mathfrak{q}$ is flat over $A_\mathfrak{p}$, then there is some $g\in B-\mathfrak{q}$ such that $(M/\mathfrak{p}M)_g$ is flat over $A/\mathfrak{p}$ and $\text{Tor}_1^A(M,A/\mathfrak{p})_g=0$.
Proof: Since $A/\mathfrak{p}$ is a Noetherian domain, and $M/\mathfrak{p}M$ a finitely generated $B$-module, we can use Generic Freeness to produce some element $f\in A-\mathfrak{p}$ such that $(M/\mathfrak{p}M)_f$ is a free $A_f$-module.
Now, since $M_\mathfrak{q}$ is flat over $A$, since by assumption $M_\mathfrak{q}$ is flat over $A_\mathfrak{p}$ and $A\to A_\mathfrak{p}$ is flat, we deduce
$$\text{Tor}_1^A(M,A/\mathfrak{p})_\mathfrak{q}\cong\text{Tor}_1^A(M_\mathfrak{q},A/\mathfrak{p})=0$$
We'd be done if we knew $\text{Tor}_1^A(M,A/\mathfrak{p})$ were a finitely generated $B$-module, since we could clearly then find $g_1,\ldots,g_r\in B-\mathfrak{q}$ annihilating the generators of $\text{Tor}_1^A(M,A/\mathfrak{p})$ and then take $g=fg_1\cdots g_r$. To see that $\text{Tor}_1^A(M,A/\mathfrak{p})$ is a finitely generated we merely use the short exact sequence
$$0\to\mathfrak{p}\to A\to A/\mathfrak{p}\to 0$$
to get the long exact sequence
$$\cdots\to\underbrace{\text{Tor}_1^A(M,A)}_{=0}\to\text{Tor}_1^A(M,A/\mathfrak{p})\to M\otimes_A\mathfrak{p}\to M\otimes_A \to M\otimes_A A/\mathfrak{p}\to 0$$
to see that $\text{Tor}_1^A(M,A/\mathfrak{p})$ is a submodule of the finitely generated $B$-module $M\otimes_A\mathfrak{p}$ which, since $B$ is Noetherian, implies that $\text{Tor}_1^A(M,A/\mathfrak{p})$ is finitely generated as desired. $\blacksquare$
With this, we have the following corollary:
Corollary: Let us have the same hypotheses as in the previous theorem. Then, for every prime $\mathfrak{Q}$ of $B$ which contains $\mathfrak{p}$ but which does not contain $g$ has the property that $M_\mathfrak{Q}$ is flat over $A$
Proof: Consider the map $A\to B_\mathfrak{Q}$. Then apply the Gross Technical lemma to the ideal $I=\mathfrak{p}$ and the $B_\mathfrak{Q}$ module $M_\mathfrak{Q}$, in conjunction with the previous theorem. $\blacksquare$
Now, we can finally prove our desired theorem:
Proof: It's clear that this is a local property, and so we may as well assume that we are in affine land, say $X=\text{Spec}(B)$ and $Y=\text{Spec}(A)$, and that $\mathscr{F}$ is $\widetilde{M}$ for some finitely generated $B$-module $M$. Let $U$ denote the flat locus of $f$.
Note first that $U$ is clearly closed under generalization. Then, since our spaces are Noetherian, it suffices to show that $U$ is constructible. But, one form of constructibility is that if $C$ is an irreducible closed subset of $X$, then if $C\cap U$ is dense (i.e. non-empty), then there exists some non-empty open subset $O\subseteq C$ such that $C\cap U\supseteq O$.
To see this holds, suppose that $U\cap V(\mathfrak{p})$ is non-empty. Then, by definition, we know that $M_\mathfrak{q}$ is a flat $A_\mathfrak{p}$-module. Then, by the corollary to the Gross Technical lemma we know that $U\cap V(\mathfrak{p})$ contains $V(\mathfrak{p})\cap D(g)$.
The conclusion follows. $\blacksquare$
I guess, in retrospect, it is a pretty annoying theorem to prove in general. Mostly technical details.