Vertex deletion to perfect matching
I'm not sure about the FPT algorithm, but I have an idea for the kernelization.

All vertices with degree > k + 1 must be in X, since otherwise you would have to pick all but one of its neighbours which would make |X| > k. So you can delete a vertex with degree > k + 1 and rerun the algorithm with the remaining graph and k = k - 1.

You can also delete any vertices with degree 0, as their deletion doesn't change the degree of any other vertices.