The problem you have in analyzing these data is that interactions don't really make sense when you have non-parametric tests. Non-parametric tests consider data to be ranks - that is we know if something is higher or lower, but we don't know the magnitude.
An interaction says does the magnitude of the effect of X1 depend on the level of X2. You're asking to compare the size of the effects, but the size of the effects is not something you can consider in a non-parametric test.
However, unequal variance is a bad reason to do a non-parametric test. Unequal variance is pretty much irrelevant if your group sizes are equal. If they're not, it's really easy to correct for it. You can use survey methods, the Browne-Forsythe correction, the Welch correction, robust estimates, sandwich estimates. Which these is easier depends on the software that you're using, and what you're familiar with.