Rudin assumes $(x^a)^b=x^{ab}$(for real $a$ and $b$) without proof?
First show that it holds for $a, b \in \mathbb N$. Then show it holds for $a,b \in \mathbb Q$ (this is easy: since $x^{p/q} = x^p \cdot (x)^{1/q}$, and $p, q \in \mathbb N$)
Finally for reals $a, b$ you have that $x^a = \sup\{x^t, t\le a, t \in \mathbb Q\}$; hence you get
\begin{eqnarray*}(x^{a})^b &=& \sup\{\sup\{x^t, t\le a, t \in \mathbb Q\}^s, s\le b, s \in \mathbb Q\} \\[0.5em] &=& \sup\{\sup\{(x^t)^s, t\le a, t \in \mathbb Q\}, s\le b, s \in \mathbb Q\} \\[0.5em] &=& \sup\{\sup\{x^{ts}, t\le a, t \in \mathbb Q\}, s\le b, s \in \mathbb Q\} \\[0.5em] &=& \sup\{x^{ts}, t\le a, s\le b, s \in \mathbb Q, t \in \mathbb Q\} \\[0.5em] &=&\sup\{x^{k}, k\le ab, k \in \mathbb Q\} \\[0.5em] &=& x^{ab} \end{eqnarray*}
"Am I missing something or he expects the reader to fill this huge gap in the proof?" It's not only a gap in the proof, Rudin hasn't even defined what $1/n^p$ means for real $p>0.$ In fact beyond integer powers, he has only defined $a^p$ for $a\ge 0$ and $p=1/n$ for some $n\in \mathbb {N}.$ Yes, there are the exercises in Chapter 1 concerning rational and real powers, but the whole lot of them make for a huge expenditure of effort at that point. I don't think this is one of Rudin's finest moments.