Is there a binary representation where the encoding distance grows with the arithmetic distance?
You can get some kind of tradeoff between unary and binary.
Start by choosing some integer $k$ and set $w=2^k-1$.
Then write $x$ as $x=r+w+w+\ldots+w$, where $r$ is the remainder of $x$ when divided by $w$. Let $\bar{a}$ denote the binary encoding of $a$. You can encode $x$ as $e(x) = \bar{r}\bar{w}\bar{w}\ldots\bar{w}$.
This encoding is of length $k\times x/w$ and you have $d_{hamming}(x,y)$ which should be in the range from $\frac{1}{w}(|x-y|-1)$ to $\frac{k}{w}(|x-y|+1)$ (give or take some rounding errors on my part).
The smaller $k$ you choose, the better correspondence between Hamming distance and absolute difference, but the longer the encoding.
You can also use Gray code instead of binary to squeeze a bit more out of it.