[proofplan]
Fix objects $A,B \in \mathcal C$. We prove directly that the map $\Psi_{A,B}$ is bijective by constructing an inverse: a natural transformation $\alpha: y(A) \to y(B)$ is sent to the morphism $\alpha_A(\operatorname{id}_A): A \to B$. Naturality forces every component of $\alpha$ to be postcomposition by this single morphism, and evaluating $y(s)$ at $\operatorname{id}_A$ recovers $s$. Since this works for every pair $A,B$, the Yoneda embedding is fully faithful.
[/proofplan]
[step:Define the candidate inverse by evaluating at the identity of $A$]
Fix objects $A,B \in \mathcal C$. Define a function
\begin{align*}
\Phi_{A,B}: \operatorname{Nat}(y(A),y(B)) &\to \operatorname{Hom}_{\mathcal C}(A,B), \\
\alpha &\mapsto \alpha_A(\operatorname{id}_A).
\end{align*}
This is well-defined because the component
\begin{align*}
\alpha_A: y(A)(A) &\to y(B)(A)
\end{align*}
is a function
\begin{align*}
\alpha_A: \operatorname{Hom}_{\mathcal C}(A,A) &\to \operatorname{Hom}_{\mathcal C}(A,B),
\end{align*}
so $\alpha_A(\operatorname{id}_A)$ is a morphism $A \to B$ in $\mathcal C$.
[guided]
Fix objects $A,B \in \mathcal C$. To prove that
\begin{align*}
\Psi_{A,B}: \operatorname{Hom}_{\mathcal C}(A,B) &\to \operatorname{Nat}(y(A),y(B))
\end{align*}
is bijective, we need to recover a morphism $A \to B$ from a natural transformation between the represented presheaves.
Let $\alpha: y(A) \to y(B)$ be a natural transformation. Its component at the object $A$ is a function
\begin{align*}
\alpha_A: y(A)(A) &\to y(B)(A).
\end{align*}
By the definition of the represented presheaves, this is
\begin{align*}
\alpha_A: \operatorname{Hom}_{\mathcal C}(A,A) &\to \operatorname{Hom}_{\mathcal C}(A,B).
\end{align*}
Since $\operatorname{id}_A \in \operatorname{Hom}_{\mathcal C}(A,A)$, the value $\alpha_A(\operatorname{id}_A)$ is a morphism $A \to B$. Therefore define
\begin{align*}
\Phi_{A,B}: \operatorname{Nat}(y(A),y(B)) &\to \operatorname{Hom}_{\mathcal C}(A,B), \\
\alpha &\mapsto \alpha_A(\operatorname{id}_A).
\end{align*}
The guiding idea is that the whole natural transformation is determined by what it does to the universal element $\operatorname{id}_A$ of the represented presheaf $y(A)$ at $A$.
[/guided]
[/step]
[step:Show that every natural transformation is postcomposition by its value on $\operatorname{id}_A$]
Let $\alpha: y(A) \to y(B)$ be a natural transformation, and define
\begin{align*}
s := \Phi_{A,B}(\alpha) = \alpha_A(\operatorname{id}_A) \in \operatorname{Hom}_{\mathcal C}(A,B).
\end{align*}
We prove that $\alpha = y(s)$.
Let $X \in \mathcal C$ be an object and let $f \in \operatorname{Hom}_{\mathcal C}(X,A)$. Regard $f: X \to A$ as a morphism of $\mathcal C$. Since $y(A)$ and $y(B)$ are contravariant functors, the morphism $f$ induces functions
\begin{align*}
y(A)(f): \operatorname{Hom}_{\mathcal C}(A,A) &\to \operatorname{Hom}_{\mathcal C}(X,A), \\
g &\mapsto g \circ f,
\end{align*}
and
\begin{align*}
y(B)(f): \operatorname{Hom}_{\mathcal C}(A,B) &\to \operatorname{Hom}_{\mathcal C}(X,B), \\
h &\mapsto h \circ f.
\end{align*}
Naturality of $\alpha$ with respect to $f: X \to A$ gives
\begin{align*}
y(B)(f) \circ \alpha_A = \alpha_X \circ y(A)(f).
\end{align*}
Evaluating both sides at $\operatorname{id}_A$ gives
\begin{align*}
y(B)(f)(\alpha_A(\operatorname{id}_A))
&= \alpha_X(y(A)(f)(\operatorname{id}_A)).
\end{align*}
By the definitions of $y(A)(f)$, $y(B)(f)$, and $s$, this becomes
\begin{align*}
s \circ f &= \alpha_X(f).
\end{align*}
Thus, for every object $X \in \mathcal C$ and every morphism $f: X \to A$,
\begin{align*}
\alpha_X(f) = s \circ f = y(s)_X(f).
\end{align*}
Therefore $\alpha_X = y(s)_X$ for every object $X$, so $\alpha = y(s)$.
[guided]
Let $\alpha: y(A) \to y(B)$ be a natural transformation. Define the morphism
\begin{align*}
s := \Phi_{A,B}(\alpha) = \alpha_A(\operatorname{id}_A) \in \operatorname{Hom}_{\mathcal C}(A,B).
\end{align*}
We must prove that $\alpha$ is exactly the natural transformation $y(s)$, meaning that each component $\alpha_X$ sends a morphism $f: X \to A$ to $s \circ f$.
Fix an object $X \in \mathcal C$ and a morphism $f \in \operatorname{Hom}_{\mathcal C}(X,A)$. The morphism $f: X \to A$ gives, by contravariance of represented presheaves, a function
\begin{align*}
y(A)(f): \operatorname{Hom}_{\mathcal C}(A,A) &\to \operatorname{Hom}_{\mathcal C}(X,A), \\
g &\mapsto g \circ f.
\end{align*}
It also gives a function
\begin{align*}
y(B)(f): \operatorname{Hom}_{\mathcal C}(A,B) &\to \operatorname{Hom}_{\mathcal C}(X,B), \\
h &\mapsto h \circ f.
\end{align*}
Naturality of $\alpha$ says that the square determined by the morphism $f: X \to A$ commutes. Written as an equality of functions, this is
\begin{align*}
y(B)(f) \circ \alpha_A = \alpha_X \circ y(A)(f).
\end{align*}
Now evaluate this equality at the element $\operatorname{id}_A \in \operatorname{Hom}_{\mathcal C}(A,A)$. We obtain
\begin{align*}
y(B)(f)(\alpha_A(\operatorname{id}_A))
&= \alpha_X(y(A)(f)(\operatorname{id}_A)).
\end{align*}
The left-hand side is $s \circ f$, because $s = \alpha_A(\operatorname{id}_A)$ and $y(B)(f)$ acts by precomposition with $f$. The right-hand side is $\alpha_X(f)$, because
\begin{align*}
y(A)(f)(\operatorname{id}_A) = \operatorname{id}_A \circ f = f.
\end{align*}
Hence
\begin{align*}
\alpha_X(f) = s \circ f.
\end{align*}
Since $X$ and $f: X \to A$ were arbitrary, every component of $\alpha$ agrees with the corresponding component of $y(s)$. Therefore $\alpha = y(s)$.
[/guided]
[/step]
[step:Verify that the two constructions are inverse functions]
First let $s \in \operatorname{Hom}_{\mathcal C}(A,B)$. Then
\begin{align*}
(\Phi_{A,B} \circ \Psi_{A,B})(s)
&= \Phi_{A,B}(y(s)) \\
&= y(s)_A(\operatorname{id}_A) \\
&= s \circ \operatorname{id}_A \\
&= s.
\end{align*}
Thus $\Phi_{A,B} \circ \Psi_{A,B} = \operatorname{id}_{\operatorname{Hom}_{\mathcal C}(A,B)}$.
Conversely, let $\alpha \in \operatorname{Nat}(y(A),y(B))$. The previous step proves that if $s = \Phi_{A,B}(\alpha)$, then $\alpha = y(s)$. Therefore
\begin{align*}
(\Psi_{A,B} \circ \Phi_{A,B})(\alpha)
&= \Psi_{A,B}(s) \\
&= y(s) \\
&= \alpha.
\end{align*}
Hence $\Psi_{A,B} \circ \Phi_{A,B} = \operatorname{id}_{\operatorname{Nat}(y(A),y(B))}$.
[/step]
[step:Conclude that the Yoneda embedding is fully faithful]
The function $\Psi_{A,B}$ has inverse $\Phi_{A,B}$, so $\Psi_{A,B}$ is a bijection for the fixed pair of objects $A,B \in \mathcal C$. Since $A$ and $B$ were arbitrary, for every pair of objects $A,B \in \mathcal C$ the induced function
\begin{align*}
\operatorname{Hom}_{\mathcal C}(A,B) &\to \operatorname{Nat}(y(A),y(B)), \\
s &\mapsto y(s)
\end{align*}
is a bijection. Therefore the Yoneda embedding
\begin{align*}
y: \mathcal C &\to \widehat{\mathcal C}
\end{align*}
is fully faithful.
[/step]