Hi,
If I understand the problem correctly then you can solve the touch visualization issue by inverting the status variables and assigning the UP button the normal state variable and the DOWN button the inverted value (or the other way around - generally the button sending 0 needs the inverted status variable). This however breaks the normal/desktop/non-touch visualization. So you have to have two layouts, one for touch and one for normal visualization.
I think it is a bug in the touch visualization honestly, as the behavior is inconsistent between touch and normal visualization (the status it is inverted).
Example:
1/1/1 = control variable up/down
1/1/2 = status variable up/down
1/1/3 = inverted status variable: if 1/1/2 is 1 then 1/1/3 is 0 and the other way around. You can control this variable by simple event script. This variable can also be virtual.
Buttons will be then configured like this:
Up button = controls 1/1/1, always sends 0, status variable 1/1/3
Down button = controls 1/1/1, always sends 1, status variable 1/1/2
I hope this helps.