I think the xxx_jsonkey trick will also work if you just model a flat object to represent your parameters for the post request, and then use the generic request method to submit your object (as optRequestData). Make sure you set 'sendWithFormEncoding' to true.
Thanks Michel...I'd actually tried that before, but you made me relook at it, and indeed, it turns out I was one version behind when the Rest module implemented the _JSONKEY workaround, which explains why it didn't work!
As a followup on this, more generally, I've upgraded my Rest Module, and the local instance runs as I'd hope. I noticed in the "show files changed on the disk" menu option, that it lists a load of javasource/restservice/xxxxx files, but makes no mention of jars that I know it also updated in userlib.. When I commit these changes to Team Server, will it only push the "listed" files (along with any project file changes), or does it also ensure jars are also pushed up?