Say $F$ is a functor from category $C$ to $D$. By "fully faithful", I mean $f \mapsto Ff$ is injective ("faithful") and surjective ("full") in $C(X, Y) \to D(FX, FY)$.
My question is: when $F$ is fully faithful, why does $FX \cong FY$ imply that $X \cong Y$ for objects $X, Y$ in $C$?
The best I am able to come up with is:
Since $FX \cong FY$, there exists an isomorphism $h \in D(FX, FY)$. And, because $F$ is full, there exists a morphism $f \in C(X, Y)$ such that $F f = h$, and also a morphism $g \in C(Y, X)$ such that $F g$ is the inverse of $h$.
but... I don't know how to prove that $f \in C(X, Y)$ is an isomorphism. I think I need to show that $f g = \text{id}_Y$ and $g f = \text{id}_X$, but I don't know how.
Notation background: I'm using the text
Bradley, T. D., Bryson, T., & Terilla, J. (2020). Topology: A Categorical Approach. MIT Press.