Here is another approach.
If $M$ is an $R$-module, and $N$ is a submodule of $M$, when we want to define a homomorphism with domain $M/N$, is sufficient define a homomorphism with domain $M$ whose kernel contains $N$. Explicitly, if $P$ is an $R$-module, and $\alpha \colon M \to P$ is a homomorphism with $N \subseteq \ker \alpha$, then we can define $\widetilde\alpha \colon M/N \to P$ via $\widetilde\alpha(m+N) := \alpha(m)$ for all $m \in M$. Sometimes, this is stated (in a very little enlightening way) as follows:
If $P$ is an $R$-module, then for every homomorphism $\alpha \colon M \to P$ with $N \subseteq \ker \alpha$ there exists a unique homomorphism $\widetilde\alpha \colon M/N \to P$ such that $\widetilde\alpha \circ \pi = \alpha$, where $\pi \colon M \to M/N$ is the canonical quotient map.
Note that the words "for every ... there exists a unique" is a fancy way to say that the function
$$
\begin{align*}
\operatorname{Hom}_R(M/N,P) & \longrightarrow \{\alpha \in \operatorname{Hom}_R(M,P): N \subseteq \ker \alpha\} \\
\beta & \longmapsto \beta \circ \pi
\end{align*}
$$
is bijective.$^1$ Futhermore, one can check that the set in the right is a subgroup of $\operatorname{Hom}_R(M,P)$, and that above function is a group homomorphism, hence a group isomorphism.
One more thing that we need to remember is the group isomorphism $\operatorname{Hom}_R(R,M) \cong M$ that identifies $\alpha \in \operatorname{Hom}_R(R,M)$ with $\alpha(1) \in M$.
As an exercise, I will left to you to think about the following chain of group isomorphisms:
$$
\begin{align*}
\operatorname{Hom}_R(R/I,M) & \cong \{\alpha \in \operatorname{Hom}_R(R,M) : I \subseteq \ker \alpha\} \\
&= \{\alpha \in \operatorname{Hom}_R(R,M): \forall i \in I,\, \alpha(i)=0\} \\
&= \{\alpha \in \operatorname{Hom}_R(R,M): \forall i \in I,\, i\alpha(1)=0\} \\
&\cong \{m \in M : \forall i \in I,\, im=0\} \\
&= \operatorname{Ann}_I(M).
\end{align*}
$$
$^1$ A function $f \colon X \to Y$ is bijective if for every $y \in Y$ there exists a unique $x \in X$ such that $f(x)=y$, isn't?
In the case that $R$ is a field, $M$ and $F$ vector spaces, one typically shows injectivity and then uses a dimension counting argument to show that this map is an isomorphism.
One way to prove it in this setting would be to pick a basis $\{e_i\}_{i\in I}$ of $F$ (this can be done, as $F$ is free!). Then $\text{Hom}_R(F,R)$ is also free, with basis denoted by $\{e^i\}_{i\in I}$, where the duality pairing is defined by $e^j(e_i) = \delta^j_i$.
Then given a map $f:M \to F$, the inverse of the map $\phi$ can be written as
$$
\phi^{-1}(f)(m) = \sum_{i\in I} e^i(f(m))e_i,
$$
for $m\in M$, where the sum only has finitely many nonzero terms.
Best Answer
Your approach seems to be showing injectivity and surjectivity of a certain map. An alternative is to construct homomorphisms both ways.
Note: we make $\text{Hom}_R(R, M)$ into a right $R$-module, just like $M$ is, by declaring $f \cdot a : R \rightarrow M$ to sent $b$ to $f(b)a$.
Consider the map $\phi : \text{Hom}_R(R, M) \rightarrow M$ sending $f$ to $f(1)$. $\phi$ is a homomorphism. Indeed, $\phi(f \cdot a) = f(1)a = f(a)$, and $\phi(f + g) = (f+g)(1) = f(1) + g(1)$.
Consider also the map $\psi : M \rightarrow \text{Hom}_R(R, M)$ sending $m$ to the map $\psi(m) : R \rightarrow M$ sending $r$ to $rm$. $\psi$ is a homomorphism.
These maps are inverse. Indeed, for $f : R \rightarrow M$, $\psi ( \phi (f))(r) = \psi (f(1))(r) = rf(1) = f(r)$. And, for $m \in M$, $\phi ( \psi (m)) = \psi(m)(1) = 1 \cdot m = m$.