Your proof has the right idea, but the case you give is not correct - so let's figure out how to fix it, and then generalize. You, at various points in the argument, basically say that if $f_i$ is not divisible by $y$, then $\deg_y f_i=0$, which is false; for instance, the ideal
$$\langle y,x+y\rangle$$
has a generator $x+y$ which is neither divisibly by $y$ nor in $\mathbb C[x]$. A more correct observation would be to note that every element $f\in\mathbb C[x,y]$ can be written as $f=a+by$ where $a\in \mathbb C[x]$ and $b \in \mathbb C[x,y]$. This is analogous to pulling off the constant term treating $\mathbb C[x,y]$ as the space of polynomials in $y$ over $\mathbb C[x]$. Then, you can observe that
$$I=\langle y,a_1+b_1y,a_2+b_2y,\ldots\rangle=\langle y,a_1,a_2,\ldots\rangle$$
since the generators on the right are linear combinations of those on the left and vice versa.
At this point you can use your argument to find some polynomial $f\in I \cap \mathbb C[x]$ of minimal degree and to find out that $I=\langle y,f\rangle$.
However, this correct better illuminates what is going on here: when we write an element as $f=a+by$ we're really looking at which coset of $\langle y\rangle$ contains $f$, taking $a\in\mathbb C[x]$ as a representative. This hints to us that the proof can be made much more compact:
Let $I$ be an ideal of $\mathbb C[x,y]$ containing $y$. Consider the quotient map $q:\mathbb C[x,y]\rightarrow \mathbb C[x,y]/\langle y\rangle$ and note that $\mathbb C[x,y]/\langle y\rangle \cong \mathbb C[x]$. Since $q$ is surjective, $q(I)$ is an ideal of $\mathbb C[x]$ and hence, as $\mathbb C[x]$ is a PID, $q(I)$ is generated by a single element $f$. Since $\ker q \subseteq I$ it must be that $f\in I$ if and only if $q(f) \in q(I)$.
Let $\bar f$ be any generator of $q(I)$ and $f$ be any element of $\mathbb C[x,y]$ such that $q(f)=\bar f$. The ideal $I$, by the above facts, must be equal to $\ker q + \langle f\rangle = \langle f,y\rangle$.
where we avoid repeating the argument that $\mathbb C[x]$ is a PID as you do and use that fact directly. This essentially uses the Fourth Isomorphism Theorem for Rings, if you are familiar with that terminology. You can also see that this generalizes: what we really need to do is to show that every ideal of $\mathbb C[x,y]/\langle y^n\rangle$ has at most $n$ generators, and then just take those generators and add $y^n$ to generate those ideals of $\mathbb C[x,y]$ containing $y^n$.
At this point, we do need another ingredient; you proof won't generalize immediately. We can observe that every element of $\mathbb C[x,y]/\langle y^n\rangle$ can be written uniquely as $a_0+a_1y+a_2y^2+\ldots+a_{n-1}y^{n-1}$ for $a_i\in \mathbb C[x]$. Essentially, $\mathbb C[x,y]/\langle y^n\rangle$ looks like the sets of coefficients $\mathbb C[x]^n$ with some strange multiplication rule and we don't really need to worry about.
We can then use your basic idea: Let $\bar I$ be an ideal of $\mathbb C[x,y]/\langle y^n\rangle$. Let $A_0$ be the set of constant terms $a_0\in \mathbb C[x]$ that appear in the expansions of elements of $\bar I$. Note that $A_0$ is an ideal of $\mathbb C[x]$, since it is closed under multiplication by $\mathbb C[x]$ and addition, thus there is some generator $g_0$ of this module. Let $\tilde g_0$ be any element of $\bar I$ whose constant term (in $y$) is $g_0$.
Then, we move on to the second coordinate and have to be a bit more clever - note that we have no control over the terms of $\tilde g_0$ except the first one. Thus, we would like our next generator not to include a constant term, since this is the only way we can maintain control over the first term. Formally, let's let $A_1$ be the set of linear terms $a_1\in\mathbb C[x]$ that appear in the expansion of elements of $\bar I$ whose constant term is $0$. Again, we can find an element $g_1$ generating the ideal $A_1$ in $\mathbb C[x]$ and a $\tilde g_1$ lifting this in $\bar I$ with no constant term. We can then proceed similarly to define $A_k$ to be the set of terms $a_k$ appearing in elements of the form $a_ky^k+a_{k+1}y^{k+1}+\ldots+a_{n-1}y^n\in\bar I$ and will this way get a sequence of generators $\langle \tilde g_0, \tilde g_1,\ldots, \tilde g_{n-1}\rangle$. You can then inductively show that every element of $\bar I$ may be written as a sum of these generators with coefficients in $\mathbb C[x]$, since we can match the first coefficient using $\tilde g_0$, then the second using $\tilde g_1$ and so on. This proves the lemma in a manner which is about as close as one can get to your original proof.
Note that we could also abstract this away: $\mathbb C[x,y]/\langle y^n\rangle$ is a free module over $\mathbb C[x]$ of rank $n$. Our above argument can be repeated to show that if $R$ is a PID, then any submodule of a free module of rank $n$ is a free module of rank $r\leq n$ - which, using that an ideal of $\mathbb C[x,y]/\langle y^n\rangle$ is also a submodule of that same set viewed as a module of $\mathbb C[x]$, gives the result we want. Abstracting this way would separate the proof a bit better: First, we reduce the given problem to a problem about $\mathbb C[x,y]/\langle y^n\rangle$ via the Fourth Isomorphism Theorem for Rings. Then, we reduce this to a common property of free modules. We could also, conversely, roll everything into one by immediately considering coefficients of elements of an ideal of $\mathbb C[x,y]$, finding $n$ generators to match the first $n$ terms of any element as in the proof, then using multiples of $y^n$ to handle the rest.