I have two ideas. I have no experience as an educator, so I don't know if these will help. I will give a brief outline of each. Please request more detail if you think either will help you.
I think you should remind them, if you don't already, to be on the lookout for the easy degenerate factorizations, like factoring out a constant:
$$2x+2y+2y^2+4x^2=2(x+y+y^2+2x^2),$$
or factoring out a variable:
$$xy+x^2=x(y+x).$$
Idea 1.
Suppose the expression factors. The general form for any expression that you mention is
$$(ax+by+c)(dx+ey+f).$$
(This can proven by comparing degrees.)
You can then multiply this out and compare coefficients of this with the expression you want to factor. This sounds difficult, but a lot of it can be done mentally. For example, if we're factoring over the integers (and it appears you are), if the degree of the $x^2$ is $1$, we know $a=d=1$ immediately. You can do a lot of easy simplifications like this to make the work not so bad.
The advantage to this is that it will always find the factorization, if it exists. If it doesn't, you can prove this by examining the resulting equations and showing they have no solution. It's relatively simple and mechanical, and easily generalizes to higher degree expressions. However, it is a little time consuming, and perhaps error-prone, as there are a lot of multiplications. (However, a student can easily check their work by multiplying out the factorization they get and checking it against the original expression.)
Idea 2.
Your students already know how to factor quadratics in one variable, right? This isn't much different. You can view expressions like $x^2-y^2-4x+4$ as quadratics in $x$ whose coefficients are polynomials in $y$. Formally, this is the statement that $\mathbb Z[x,y]=(\mathbb Z[y])[x]$.
Let me do an example to make this clear. We can write $x^2-y^2-4x+4$ as
$$x^2-4x+(4-y^2).$$
Note that I have grouped the terms so it looks like a polynomial in $x$.
Just as we usually factor quadratics, we want to find polynomials $a(x)$ and $b(x)$ so that $a+b=-4$ and $ab=4-y^2$. It's not too hard to see that $a=-(2-y)$ and $b=-(2+y)$ works (using the difference of squares factorization on $4-y^2$), and this gives
$$(x-(2-y))(x-(2+y)=(x-2+y)(x-2-y).$$
This agrees with your factorization above.
The possible problem I see with is that students may not be comfortable with the idea of polynomials as coefficients.
Edit.
I will do your other two examples using the second method.
$1.$
We group as before
$$x^2 - (2y)x + (y^2-9).$$
We want polynomials $a(x)$ and $b(x)$ such that $a+b=-2y$ and $ab=y^2-9$. Using the difference of squares factorization on $y^2-9$, we see that $a=-(y+3)$ and $b=-(y-3)$ work. We then obtain the factorization
$$(x-(y+3))(x-(y-3))=(x-y-3)(x-y+3).$$
$2.$
We want to factor $2y-6-3x+xy$. This is a linear polynomial in $x$, so we write it as
$$(y-3)x+(2y-6).$$
Now we know the only way to factor linear polynomials $ax+b$ is to take a constant out of each term. Here 'constant' means 'polynomial in $y$.' This gives
$$(y-3)(x+2)$$
as desired.