ah sorry i see what you are saying... im not sure what to tell you except for a few ideas that might or might not work. when you are building your button you can give it an id. you might be able to have a single function, and then use the id to determine which has been pushed.
you have some very good explanations in there, I'll try to just say in simple terms,
if you were to spill water on some pages randomly placed on each other with slight overlap, the page on the top will be the wettest and the page on the bottom the least.
So the touch will always first go to the object on the top, if you do not want it to handle, do not handle it or move that object to the below the object you want handling the touch first on top.
If you handle the touch, return "true" signifying that you have handled the event so that it does not get passed on to the other objects.
cheers,
?:)