Simulator control surface project- advice needed (lots of digital inputs)

First of all my apologies for the late answer but life came and have had no time for this...

The Arduino only has to send the states of controls to the PC and recieve some limited data via serial and thats about it.

The 100nF capacitor seems to work fine but i still have problems and a i would not want to commit before they are solved or proven unavoidable.
So here is what i found out:
I set up an encoder with two 100nF caps parallel, 2 10K pullups and a logic analyser. Seemingly perfect, not glitch or bounce. The filtering in the analyser software is turned off so i get raw input.

If i hook the encoder up to the Arduino using the internal pullups i do get some bounce every now and then. Why?
Should i put the caps close to the encoder or the Arduinos input pins?

Printing a counter on an lcd i get about 80% reliability.