It seems like any allocation where $X_{11}=X_{12}$ is Pareto efficient.
Recall from Edgeworth box, $1 = X_{11} + X_{21}$ and $1 = X_{12} + X_{22}$
Start with the utility function:
$$U_1 = X_{12} - X_{21} $$
Use the first Edgeworth box identity to substitute out $X_{21}$.
$$\Rightarrow U_1 = X_{12} + (X_{11} - 1) $$
$$\Rightarrow MU_{11} = \frac{\partial U_1}{X_{11}} = 1 = \frac{\partial U_1}{X_{12}} = MU_{12} = 1 $$
At interior bundle utility maximization:
$$\Rightarrow \frac{MU_{11}}{P_1} = \frac{1}{P_1} = \frac{MU_{12}}{P_2} = \frac{1}{P_2} \rightarrow P_1 = P_2$$
So the first guy is happy as long as the two goods have the same price.
$$U_2 = X_{21} \cdot X_{22} $$
$$\Rightarrow MU_{21} = \frac{\partial U_2}{X_{21}} = X_{22} $$
$$\Rightarrow MU_{22} = \frac{\partial U_2}{X_{22}} = X_{21} $$
$$\Rightarrow \frac{MU_{21}}{P_1} = \frac{X_{22}}{P_1} = \frac{MU_{22}}{P_2} = \frac{X_{21}}{P_2} \rightarrow X_{21} = X_{22}$$
But, again because of the Edgeworth both, this implies
$$ \Rightarrow 1- X_{11} = X_{21} = X_{22} = 1- X_{12} $$
$$ \Rightarrow X_{11} = X_{12} $$
Which, when I check the result, manually seems to work. Consider $$\Rightarrow X_{11} = X_{12} = 0.25 \Rightarrow X_{21} = X_{22} = 0.75$$
How many units of $X_{12}$ does person 1 want to give up 0.01 units of $X_{11}$? He wants .02 units:
$$U_{1,old} = X_{12} + (X_{11} - 1) = 0.25 + 0.25 - 1 = -0.5$$
$$U_{1,new} = X_{12} + (X_{11} - 1) = 0.24 + 0.26 - 1 = -0.5$$
But that trade leaves the second person worse off:
$$U_{2,old} = X_{21} \cdot X_{22} = 0.75^2 = 9 / 16 = 0.5625 $$
$$U_{2,new} = X_{21} \cdot X_{22} = 0.76 \cdot 0.74 = 0.562400365 < U_{2,old}$$
So there is no trade to do.
We should also check that the corner solutions aren't better.
- {1,0} is worse for person two
- {0,1} is worse for person two
- {1,1} is worse for person two
- {0,0} is worse for person one
More generally:
If $X_{11}=0 \rightarrow X_{21}=1$ and then $U_2 \geq 0.5625 \rightarrow X_{22} \geq 0.5625$ this in turn implies that $X_{12} \leq 0.4375 \rightarrow U_1 \leq 0.4375 - 1 = -0.5625 < -0.5$ which is not a pareto improvement.
If $X_{11}=1 \rightarrow X_{21}=0$ and then $U_2 \geq 0.5625$ has no valid solutions.
Similarly, if $X_{12}=1 \rightarrow X_{22}=0$ and then $U_2 \geq 0.5625$ has no valid solutions.
If $X_{12}=0 \rightarrow X_{22}=1$ and then $U_2 \geq 0.5625 \rightarrow X_{21} \geq 0.5625$ this in turn implies that $X_{11} \leq 0.4375 \rightarrow U_1 \leq 0.4375 - 1 = -0.5625 < -0.5$ which is not a pareto improvement.
So none of the corner solutions are pareto improvements. We could generalize this corner solution checking for arbitrary $X_{11}=X_{12}$, but I'll leave that as an exercise to the reader.