OK... my first recommendation is not to mix the use of Command/CommandListener with keyPressed() events. They work together with varying degrees of success, depending on device. (If you think Nokia's are inconsistent, wait until you want to support other manufacturers' devices...)
Never use Commands with a Canvas with setFullscreenMode(tue).
For Series 60, 3rd Edtition FP2 and later, you can disable the assignment of Commands to the dpad-dentre ("fire" key), and enable keyPressed() events, when in non-fullscreen mode and using Commands. Add:
to your JAD or Manifest.
Beware getGameAction(). Remember that several keys might map to the same action (there might be more than one FIRE key).
On Nokia and Sony Ericsson devices, you can refer to the dpad-centre as: