Insteon keypads are tricky, aren’t they?
I haven’t tried to automate things on the keypad from OH, precisely because of the “button state” problem. I had an additional problem where I couldn’t get button one to work without controlling the load the way I wanted, so went to a different configuration until I can figure that out.
It may be that this is one of the places the ISY device shines, because it has scenes that know how to do these things. I haven’t got one myself, and have been trying to avoid the expense, but on another forum everyone with the ISY described this situation as “easy” and showed config examples of how they did it.
Oddly, on that forum, everyone using Insteon uses the ISY and nobody’s even heard of OpenHAB. My trying to do manual programming of the devices seemed alien to them, when there’s a tool to help.
You are not alone in your struggle, and it’s a tricky situation.
You might get better sync by using a virtual switch for each button, and then having rules on either the button change or the “virtual” switch change that would update the status of everything else. Less loops that way, and then you get a single switch in OH for each button. I haven’t tried this yet, personally, but it’s working well for another cranky device I have.