The answer is no, not necessarily. Countable transitive models can have fake sharps.
To see this, observe simply that the existence of a countable transitive model of "$\text{ZFC}+x^\sharp$ exists"assertion,
$$\hbox{There is a countable transitive model of $\text{ZFC}+x^\sharp$ exists}$$
is itself a $\Sigma^1_2$$\Sigma^1_2(x)$ assertion, and thus it is absolute to $L[x]$, where the real $x^\sharp$ does not exist. So there will be a countable transitive model $M\in L[x]$ that thinks $x^\sharp$ exists, but it willmust have a fake $x^\sharp$.
In particular, if there is a transitive model of ZFC+$0^\sharp$ exists at all, then there is such a model inside $L$. And any such model inside $L$ cannot have the real $0^\sharp$.