The construction is analog to decimals: Something before the decimal point and then a sequence of digits, but not ending in infinitely many $9$s.
To add $a=(a_0,a_1,\ldots)$ and $b=(b_0,b_1,\ldots)$, let $c_n=\operatorname{rem}(a_n+b_n+\operatorname{carry}(a_{n+1}+b_{n+1}))$, where $$ \operatorname{rem}(x)=\begin{cases}x&\text{if $x<p$}\\x-p&\text{otherwise}\end{cases}$$
and
$$ \operatorname{carry}(x)=\begin{cases}0&\text{if $x<p$}\\1&\text{otherwise}\end{cases}$$
If it should happen that this makes almost all $c_n=p-1$, let $n_0$ be minimal with $n_0\ge 0$ and $c_n=p-1$ for all $n>n_0$ and then let
$$d_n=\begin{cases}0&\text{if $n>n_0$}\\c_n+1&\text{if $n=n_0$}\\
c_n&\text{if $0\le n<n_0$}\end{cases}$$ and verify that $(c_0,c_1,\ldots)$ is an element of $\mathbb R$.
It is a bit cumbersome to then show that this makes $(\mathbb R,+)$ an abelian group.
Multiplication is a bit more convoluted (literally), but also it is just an adaption of long multiplication.
To add $a=(a_0,a_1,\ldots)$ and $b=(b_0,b_1,\ldots)$, first let $c_n=\sum_{k=0}^n a_kb_{n-k}$. Now if $M:=\max\{|a_0|,|b_0|\}$ we see that $|c_n|<np^2+2Mp$. Conclude that it is possible to compute the correct "digit" at place $n$ from finitely many of the $c_n$.
The approach, while staying close to decimal representation of numbers, is apparently somewhat more messy in the technical details that Dedekind's or Cauchy's, and that is especially true for what remains to be shown about multiplication (except one introduces limits / Cauchy / Dedekind through the backdoor) - such as associativity, commutativity, existence of inverses, distribution over $+$.
Your definition of $<$ is fine, of course. I assume you were led there also by comparing with decimal expansions. Once again, showing that this definition does what it is supposed to do (total order, compatible with addition and multiplication) is the laborious part.