Let $f(x)$ be an element of $\mathbb{Z}_3[x]/\textbf{(}x^3+2x+1\textbf{)}$. Then $f(x)=p(x)+\textbf{(}x^3+2x+1\textbf{)}$ for some arbitrary polynomial $p(x)$ belonging to $\mathbb{Z}_3[x]$ (here $\mathbb{Z}_3$ denotes the integers modulo $3$). We seek a "nicer" form for $f(x)$.
First of all, we may write $f(x)=p(x)+k(x)(x^3+2x+1)$ for some $k(x)\in\mathbb{Z}_3[x]$. By the Division Algorithm, we have $p(x)=q(x)(x^3+2x+1)+r(x)$ for some $q(x),r(x)\in\mathbb{Z}_3[x]$ such that either $r(x)=0$ or $\deg(r(x))<\deg(x^3+2x+1)=3$.
In the case that $r(x)=0$, we have $f(x)=q(x)(x^3+2x+1)+k(x)(x^3+2x+1)=(q(x)+k(x))(x^3+2x+1)$, so $f(x)$ is just the zero element of the quotient ring. On the other hand, if $\deg(r(x))<\deg(x^3+2x+1)=3$, then write $r(x)=ax^2+bx+c$ and we have $$ \begin{align*} f(x)&=q(x)(x^3+2x+1)+ax^2+bx+c+k(x)(x^3+2x+1)\\ &=ax^2+bx+c+(q(x)+k(x))(x^3+2x+1), \end{align*} $$ so in reality we can write $f(x)=ax^2+bx+c+\textbf{(}x^3+2x+1\textbf{)}$. When $r(x)=0$ just set $a=b=c=0$, so we have found a nicer form for $f(x)$.
Note that I am using $\textbf{bold}$ parentheses to denote ideal, and regular parentheses to denote multiplication.
Is this line of reasoning sound? And is it true that we can generalize this?
Yeah this looks good.
The general idea is: if $f(x)\in\mathbb F[x]$ is an irreducible polynomial over a field $\mathbb F$, then $\mathbb F[x]/\langle f(x)\rangle$ is a field as well as an $\mathbb F$-vector space of dimension $n:=\deg(f)$. A basis is just the images of $1,x,\ldots,x^{n-1}$ in the quotient space. So in this case the basis is the images of $1,x,x^2$ (as you have with the $a,b,c$ coefficients). In terms of writing an element of the quotient space, it is just of the form $a_0+a_1x+\cdots+a_{n-1}x^{n-1}+\langle f(x)\rangle$ for some $a_j\in\mathbb F$.