Distance measure for ternary feature
Since apparently each feature is encoding something about two different categories, I would suggest that you should replace that with two features.  Your two features would be $(x,y)$ where $x$ is 0 or 1 according to whether it exists in the first category, and $y$ is 0 or 1 according to whether it exists in the second category.  In other words, instead of -1, 0, and 1, you would use $(1,0)$, $(0,0)$, and $(0,1)$, respectively.  I think that is closer to the true data and might give better results.  It might also make your results easier to interpret.

Then you can try both distance metrics and see which you find more helpful -- but it might not make a large difference.