Why isn't every $\mathcal O_X$-module quasi-coherent?

1) You write "We know that every module $M$ over a ring $R$ has a free presentation, so why isn't every $\mathcal O_X$-module quasi-coherent? "
But this is begging the question: the correspondence on affine schemes between sheaves and their modules of sections is only valid for quasi-coherent sheaves!

2) Given an arbitrary $\mathcal O_X$- module and a point $x\in X$, there need not even exist a neighbourhood $U$ of $x$ and a surjective morphism of sheaves $\mathcal O_X^{(I)}|U\rightarrow\mathcal F|U\rightarrow 0$.
Indeed, from the Stacks Project (section 17.8) we can extract the following
Example:
Let $X=\mathbb R$ with the usual topology, endowed with the constant sheaf $\mathcal O_X=\underline{\mathbb Z}$ to make it a ringed space.
Let $U =\mathbb R^*_+\subset X$ be the open subspace of positive numbers and let $\mathcal Z=\mathcal O_X\mid U$ be the constant sheaf associated to $\mathbb Z$ on $U$.
Now if $i:U\hookrightarrow \mathbb R$ is the inclusion, consider the sheaf $\mathcal F:=i_!\mathcal Z$ on $X$.
For any connected neighbourhood $U$ of $0$ in X we have $\Gamma(U,\mathcal F)=0$ so that there can be no surjection $\mathcal O _X^{(I)}\mid U\to \mathcal F\mid U\to 0$.
[Recall that morphisms $\mathcal O _X^{(I)}\mid U\to \mathcal F\mid U$ correspond to families $(s_i)$ of sections $s_i\in \Gamma(U,\mathcal F)$]


You can always get an exact sequence $ \mathcal{O}_X(U)^I\to \mathcal{O}_X(U)^J\to \mathcal{F}(U)\to 0$, but it is not guaranteed that you can get it to behave well with respect to the restriction maps.

The definition of quasi-coherence you gave is equivalent to the following (which is really helpful to understand): Let $U=Spec(A)$ be an affine open subset of $X$, and let $f\in A$ be a function on $U$. Then the restriction map $\mathcal{F}(U)\to \mathcal{F}(U_f)$ is exactly the localisation of $\mathcal{F}(U)$ with respect to $f$.

Now you should see that this is a non-trivial requirement, and does not follow from the sheaf axiom.