http://docs.opscode.com/config_rb_client.html says that the node_name option also sets the client_name, but the formatting of the page makes me think that client_name might be a settable option somewhere. Can it be set differently or separately from node_name?
No, you can't.
it always (at least in current release of chef) use your node name as client name when you register a new chef client in chef server. see the line 369 of chef client ruby code