The keyboard binding in Minecraft tries to do some futile attempts at mapping characters not A-Z or 0-9 to keys on US-Qwerty for an unknown reason. This plan fails with layouts where A-Z aren't in the same places as on US-Qwerty. For instance, hitting keys like ',.; on Dvorak layouts result in Qwerty's QWERZ accordingly, conflicting with keys that are A-Z and return the same characters.
This bug has appeared since Beta. It worked correctly in Alpha, possibly because no attempts at mapping like that were done.
Possible solution: Map keys based on keycode, not character code, which seems what the key binding settings does anyway, before the rest of Minecraft adds a layer of WTF.
This bug makes minecraft practically unplayable on non-qwerty keyboards, including Dvorak. It has been reported many times on the wiki, I sincerely hope it gets some attention on your issue tracker now that you finally got one.
If you don't know how the key codes are arranged on a dvorak keyboard layout, it looks like this: http://upload.wikimedia.org/wikipedia/commons/2/25/KB_United_States_Dvorak.svg
To even further clarify, the US-QWERTY keyboard is like:
1234567890-=
QWERTYIOP[]\
ASDFGHJKL;'
ZXCVBNM,./
The Dvorak keyboard is like:
1234567890[]
',.PYFGCRL/=\
AOEUIDHTNS-
;QJKXBMWVZ
However, Minecraft handles it like:
1234567890-=
QWEPYFGCRL[]\
AOEUIDHTNS'
ZQJKXBMWVZ