I can show that this is true for your "simple" case.
If g(x,y) ∈ C∞(ℝ2) vanishes on x ≤ 0 then it decomposes as g(x,y) = a(x)G(x,y) where a(x) ∈ C∞(ℝ) vanishes on x ≤ 0 and G(x,y) ∈ C∞(ℝ2).
This can be shown by proving the statements below. They could possibly be standard results, but I've never seen them before. The proofs are a bit sketchy at the moment, but I think they're good. First, I'll refer to the following sets of functions.
- Let U be thet set of functions f(x)∈C∞(ℝ) which vanish on x≤0 and are positive on x>0.
- Let V be the set of functions f:ℝ+→ℝ such that x-nf(x)→0 as x→0, for each positive integer n.
The statements I need to show the main result are as follows.
Lemma 1: For any f∈V, there is a g∈U such that f(x)/g(x)→0 as x→0.
Sketch proof: Choose any smooth function r:ℝ+→ℝ+ with r(x)≥1 for small x, and r(x)=0 for x≥1. For example, we can use r(x) = exp(2-1/(1-x)) for x≤1. Then, the idea is to choose a sequence of positive reals αk→0, |α|≤1 and set
$$ g(x)=x^{\sum_kr_k(x/\alpha_k)}={\rm exp}\left({\rm log}(x)\sum_kr_k(x/\alpha_k)\right)$$ for x>0 and g(x)=0 for x≤0. Only finitely many terms in the summation will be nonzero outside any neighborhood of 0, so it is a well defined expression, and smooth on x>0. The nth derivative is bounded by Knx-ng(x)Σk1{x<αk}αk-n, for positive constants Kn. As long as αk go to zero fast enough, this goes to zero as x→0, so g∈C∞(ℝ).
By definition of f∈V, there is a decreasing sequence of positive reals εk such that f(x)≤xn for x≤εn. We just need to make sure that αk≤εn+1 for k≥n to ensure that f(x)/g(x) goes to zero at rate x as x→0.
Lemma 2: For any sequence f1,f2,...∈V there is a g∈U such that fk(x)/g(x)→0 as x→0 for all k.
Sketch Proof: The idea is to apply Lemma 1 to f(x)=Σkλk|fk(x)| for positive reals λk. This works as long as f∈V, which is the case if Σkλkmin(x,1)-ksupx≤k|fk(x)| is finite, and this condition is easy to ensure.
Lemma 3: For any sequence f1,f2,...∈V there is a g∈U such that fk(x)/g(x)n→0 as x→0 for all positive integers k,n.
Proof: Apply Lemma 2 to the doubly indexed sequence fk,n=|fk|1/n.
The result follows from applying lemma 3 to the triply indexed sequence fi,j,k(x)=max{|(di+j/dxidyj)g(x,y)|:|y|≤k}∈V. Then, there is an a∈U such that fijk(x)/a(x)n→0 as x→0. Set G(x,y) = f(x,y)/a(x) for x>0 and G(x,y) = 0 for x ≤ 0. On any bounded region for x>0, the derivatives of G(x,y) to any order is a sum of terms, each of which is a product of fijk(x,y)/a(x)n with derivatives of a(x), so this vanishes as x→0. Therefore, G∈C∞(ℝ2).