I think I have an argument that no monotonic bijection $f$ exists from $\mathbb{R}$ to $\mathbb{R}\setminus\{0\}$. To see this set $L$ the image of $f^{-1}$ on the negative reals and $U$ the image of $f^{-1}$ on the positive reals.
- If $lub(L) < glb(U)$ clearly $f^{-1}$ is not surjective
- If $lub(L) > glb(U)$ then $f^{-1}$ is not monotonic
- If $lub(L) = glb(U)$ then we can take $x = lub(L)$, and $f(x)$ must be less than all positive reals and greater than all negative reals, which no member of $\mathbb{R}\setminus\{0\}$ satisfies.
I'm trying to find a similar argument for the case with $\mathbb{Q}$, but I'm struggling because the third case requires that $lub(L) \in \mathbb{Q}$ which I don't think necessarily holds.
Your proof for $\mathbb{R}$ is correct, but you're right to be suspicious of $\mathbb{Q}$. In fact, there are such bijections!
This follows from a theorem of Cantor, using a back-and-forth argument:
In particular, both $\mathbb{Q}$ and $\mathbb{Q}\setminus\{0\}$ are countable dense linear orders without endpoints.
Here's an outline of how to prove Cantor's theorem above:
First, we prove that "finite partial bijections are extendible:"
Lemma: Suppose $X,Y$ are countable dense linear orders without endpoints, $x_1,...,x_n\in X$, $y_1,...,y_n\in Y$, and the map $x_i\mapsto y_i$ is order-preserving (that is, for $1\le i,j\le n$ we have $x_i<_Xx_j\iff y_i<_Yy_j$). Then:
For every $a\in X$, there is a $b\in Y$ such that the map $x_i\mapsto y_i, a\mapsto b$ is order-preserving.
For every $b\in Y$, there is an $a\in X$ such that the map $x_i\mapsto y_i, a\mapsto b$ is order-preserving.
The proof uses density and the lack of endpoints to show that we can never "get stuck." To see why the lemma is true, you might consider the situation $n=2$, going from $X$ to $Y$: given $x_1,x_2$, there are three possibilities where to put $a$ as far as the "order-pattern" of $(x_1,x_2,a)$ is concerned - namely, to the left of both, to the right of both, and in between the two - and each of these can be mirrored on the $Y$ side since no matter what $y_1,y_2$ are, there are points to the left of both (since $Y$ has no left endpoint), to the right of both (since $Y$ has no right endpoint), and in between the two (since $Y$ is dense).
We now iterate the lemma to build a full bijection between our two countable dense linear orders without endpoints:
We fix enumerations $\{x_i:i\in\mathbb{N}\},\{y_j:j\in\mathbb{N}\}$ of $X,Y$ respectively.
At the beginning of stage $s$ we will have defined finite tuples $A_s=(a_1,...,a_s), B_s=(b_1,...,b_s)$ of elements from $X$ and elements from $Y$, respectively, such that the map $$f_s: A_s\rightarrow B_s: a_i\mapsto b_i$$ is order-preserving. We begin with $A_0=\emptyset, B_0=\emptyset$.
At even stages, we "extend on the $X$ side:" at stage $2s$ we pick the least $m$ such that $x_m$ isn't in $A_{2s}$, and we use the lemma to find some $y\in B$ such that extending $f_s$ to send $x_m$ to $y$ remains order-preserving; we then tack $x_m$ onto $A_{2s}$ to get $A_{2s+1}$ and tack $y$ onto $B_{2s}$ to get $B_{2s+1}$.
At odd stages, we "extend on the $Y$ side:" just like before, we pick the next unused element $y_m$ of $Y$, and apply the lemma to extend our $f_s$ to a slightly larger $f_{s+1}$ with $y_m$ in its range.
Putting these stages together we get our desired full bijection $f$.
Where does this break down for uncountable dense linear orders without endpoints? Well, we find ourselves needing to iterate the lemma above through the countable ordinals; but at the very first infinite stage, it can't be applied since "$f_\omega$" isn't a finite partial bijection.