What you've said so far is correct, but the fact that the group is cyclic of order $p-1$ is significantly harder. You'll need some real idea here; it's not a matter of just following your nose.
One standard approach is to prove the Cyclicity Criterion: a group $G$ of finite order $n$ is cyclic $\iff$ for each divisor $d$ of $n$ there are at most $d$ elements $x$ with $x^d = 1$ (the identity element). This is generally proved using a counting argument, and it is helpful to know that $\sum_{d \mid n} \varphi(d) = n$, where $\varphi(d) = \# (\mathbb{Z}/d\mathbb{Z})^{\times}$ is the number of integers $1 \leq e \leq d$ with $\gcd(e,d) = 1$.
With that in hand you should observe that $\mathbb{Z}/p\mathbb{Z}$ is a field, and thus the number of roots of the polynomial $x^d - 1 = 0$ in it is at most $d$. This argument ends up showing a little more: any finite subgroup of the multiplicative group of a field is cyclic.
P.S.: If I tell you that the result is often called "existence of primitive roots modulo $p$", that may help you look it up in many standard introductory texts on algebra and/or number theory.
With respect to (a) first:
Why isn't $\bar0$ defined? It seems you're working in $\mathbb{Z}/p\mathbb{Z}$ and not only the group of units; thus $\bar{0}$ is defined just fine. Secondly, it seems you are deliberately forgetting that $\mathbb{Z}/p\mathbb{Z}$ is a ring and not just a group, i.e. that you have both addition and multiplication. Perhaps you thought in both cases that you were working in the group of units instead of the ring of integers mod $p$?
What you should do is work in the ring, realize $a$ has a (non-zero unital) inverse, and conclude that $a$ is in the group of units. This angle is the one espoused by (a), and is what makes it fine.
With respect to (b):
I like this one a lot less because standard proofs of Fermat's little theorem use (often explicitly) the size of the group of units (and Lagrange's theorem). Or they use the size of the group of units and then multiply them all together, do a little cancellation (maybe with Wilson's theorem), and get the result. But in both cases, you use the size of the group of units, so there is danger of self-referentiality.
But there are ways of proving Fermat's little theorem avoiding knowing the size of the group of units; so let's assume we've done that.
A priori, you only know that $a^{p-2} \in \mathbb{Z}/p\mathbb{Z}$, i.e. that it could be $0$. Well, is it $0$? If it were $0$, this means that $p \mid a^{p-2}$. But $p$ is prime, so if $p \nmid a$ then $p \nmid a^{x}$. So $a^{p-2} \neq 0$, and thus is in $1, \ldots, p-1$. (I stopped using bars, but every number here is in $\mathbb{Z}/p\mathbb{Z}$).
Best Answer
You can't show that $p-1$ is the least positive integer $r$ such that $a^r\equiv 1\pmod{p}$, because in general it isn't: for instance, the least integer for $a=1$ is $1$.
But all you need is to find an element which acts as an inverse:
$$a\cdot a^{p-2} \equiv 1 \pmod{p}$$
so that, for any $\overline{x}\in\mathbb{Z}^*_p$ you have
$$\overline{x}\cdot\overline{x}^{\,p-2} = \overline{1}$$
and so
$$\overline{x}^{\,-1}=\overline{x}^{\,p-2}$$