car -> first
cdr -> next
caar -> ffirst
cadr -> fnext
cdar -> nfirst
cddr -> nnext
So you really can compose the names. They're still less concise, but only by a couple of characters. If you really wanted to save those characters, use fst/rst (and ffst, frst, etc).
EDIT: I failed to completely read your post; it seems you already mentioned ffst etc. Don't know that my comment adds much to the debate.
Actually, those were new to me -- I was trying to use fst and rst, and failing at it. While the Clojure way works better than my example, there's something about it that I don't like. Maybe it's simply that it's new -- if that was the original way, I'd react similarly to introducing car and cdr.