If you're working over the field $k$, I think the functor $k \otimes_{\mathbb{Z}} -: \mathbf{Ab} \to \mathbf{Vect}_k$ should work.
Let $F$ be the forgetful functor $\mathbf{Vect}_k \to \mathbf{Ab}$, $A$ an abelian group and $V$ a vector space over $k$. Then, given $f: A \to F(V)$, define $f': k \otimes_{\mathbb{Z}} A \to V$ by setting $f'(s \otimes a) := s \cdot f(a)$ and extending additively. Given $g: k \otimes_{\mathbb{Z}} A \to V$, define $g^*:A \to F(V)$ by setting $g^*(a) := g(1 \otimes a)$. One can check that the assignments $f \mapsto f'$ and $g \mapsto g^*$ are mutually inverse and thus give bijections between $\mathrm{Hom}_{\mathbf{Ab}}(A,F(V))$ and $\mathrm{Hom}_{\mathbf{Vect}_k}(k \otimes_{\mathbb{Z}}A,V)$.
Let $D : \mathbf{fdVec}^{\mathrm{op}}_k \to \mathbf{fdVec}_k$ be the dual space functor, defined by
$$D(V) = V^*, \quad D(f : V \to W) = f^* : W^* \to V^*$$
where $\mathbf{fdVec}_k$ is the category of finite-dimensional vector spaces over a field $k$, and $k$-linear maps.
When we say that $V^*$ is 'not naturally isomorphic' to $V$, we mean that there is not a functor $I : \mathbf{fdVec}^{\mathrm{op}}_k \to \mathbf{fdVec}_k$ with $I \cong D$ such that $I(V)=V$ for all $V$.
So in a sense, you're answering a different question, since what you have defined is a functor $G : \mathbf{fdVec}_k \to \mathbf{fdVec}_k$ with $G \cong \mathrm{id}$ such that $G(V)=V^*$ for all $V$.
What you proved is an instance of a more general fact: given any category $\mathcal{C}$ and any function $(-)^* : \mathrm{ob}(\mathcal{C}) \to \mathrm{ob}(\mathcal{C})$ such that $A \cong A^*$ for all $A \in \mathrm{ob}(\mathcal{C})$, there is a functor $G : \mathcal{C} \to \mathcal{C}$ such that $G \cong \mathrm{id}_{\mathcal{C}}$ and $G(A)=A^*$ for all objects $A$. The proof is identical to the proof you gave.
Even more generally, given a category $\mathcal{C}$, a subcategory $\mathcal{D}$ and a function $(-)^* : \mathrm{ob}(\mathcal{C}) \to \mathcal{ob}(\mathcal{D})$ such that $A \cong A^*$ for all objects $A$, there is an equivalence of categories $G : \mathcal{C} \rightleftarrows \mathcal{D} : I$, where $I$ is the inclusion $\mathcal{D} \hookrightarrow \mathcal{C}$ and $G(A) = A^*$ for all objects $A$ of $\mathcal{C}$. Again, the proof is essentially identical to what you gave, and can be used to prove that every category $\mathcal{C}$ is equivalent to its skeleton.
To give this some more perspective: a consequence of this fact is that $\mathbf{fdVec}_k \simeq \mathbf{Mat}_k$, where $\mathbf{Mat}_k$ has $\{ k^n : n \in \mathbb{N} \}$ as its set of objects, with a morphism $f : k^n \to k^m$ being an $m \times n$ matrix over $k$. Despite all of this, it would be misleading to say that every finite-dimensional vector space over $k$ is 'naturally isomorphic' to $k^n$ for some $n \in \mathbb{N}$, despite the fact that there is a functor $\mathbf{fdVec}_k \to \mathbf{fdVec}_k$ given by $V \mapsto k^{\mathrm{dim}(V)}$ that is naturally isomorphic to the identity functor.
For the same reasons, despite the natural isomorphism you have defined, it would be misleading to deduce that every vector space is 'naturally isomorphic' to its dual.
Best Answer
As people are asking in comments, we need to know whether you want the free functor $F : \mathsf{FinSet} \to \mathsf{FinVec}$ to have a left or a right adjoint. The answer is a bit subtle and depends on your underlying field.
First, why might it not have a right adjoint? Any functor that calls itself "free" should be left adjoint to a forgetful functor... The issue is that the forgetful functor $U$ on $\text{FinVect}$ takes values in infinite sets if your field $k$ is infinite.
If $k$ is finite, then the underlying set functor $U$ will work, with $F \dashv U$ as usual (do you see why?).
If $k$ is infinite, then $F$ is the restriction of the free functor on the whole of $\mathsf{Set}$ to the (full) subcategory $\mathsf{FinSet}$. Then if $F$ did have a right adjoint, $U'$, we would have (if $\iota : \mathsf{FinSet} \hookrightarrow \mathsf{Set}$ is the inclusion):
$$ \begin{aligned} \text{Hom}_\mathsf{Set}(\iota X, \iota U' V) &\cong \text{Hom}_\mathsf{FinSet}(X, U' V) \\ &\cong \text{Hom}_\mathsf{FinVect}(FX, V) \\ &\cong \text{Hom}_\mathsf{Set}(\iota X, UV) \end{aligned} $$
So $\iota U'$ would have to be $U$ (the usual forgetful functor to $\mathsf{Set}$). Notice in the case of $k$ finite this is OK, since the underlying set of a finite dimensional vector space over a finite field does factor through $\mathsf{FinSet}$. However if $k$ is infinite, then $UV$ is not of the form $\iota Z$ for any finite set $Z$, so $U'$ cannot exist.
Second, why won't $F$ have a left adjoint?
This is much less subtle. If $F$ has a left adjoint, then it preserves limits. In particular, it should preserve the terminal object. But $F1 = k^1$ is not terminal in $\mathsf{FinVect}$ (do you see why?).
I hope this helps ^_^