The way I believe it happened was by the change of "w" into "v" and the fall of the velar "k". Furthermore, betacism caused the change of "v" to "b" in this word. Only in romanian, maybe because of the inclination towards unvoiced consonants, "v" became "p" instead. This change seems very interesting to me because it didnt occur in the other main romance languges, even though the change of "w" to "v" was a general phenomenon in vulgar latin. I know I'm ignorant about linguistics and I'm deeply sorry if there are any errors in my question or theory.
Labiovelars like /kʷ/ (that is, the Latin qu- sound) and /ɡʷ/ have turned into labial stops in at least some environments in a few different languages (almost exclusively in European Indo-European languages); it happened in Greek after the Mycenaean period (compare e.g. the verb ἕπομαι hépomai 'to follow' with its Latin cognate sequor, both reflecting the PIE root *sekʷ-; in certain environments the labiovelars became dentals instead), in some but not all Celtic languages (Welsh pedwar 'four' but Irish ceathair, from PIE *kʷetwóres), in the Sabellic Italic languages (Oscan pumpe 'five' vs. Latin quinque, from Proto-Italic *kʷenkʷe < PIE *penkʷe), and then again in some of the Romance languages (Sardinian and the Eastern Romance), as you've observed. There, it only happened in very few environments—possibly only before /a/.
Often in these languages /kʷ/ would become /p/ and /ɡʷ/ would become /b/, preserving the voice of the labiovelar (/gʷʰ/ was often trickier; it became /pʰ/ in Greek, for instance), including in Romanian: Latin aqua > Romanian apă, as you said, but Latin lingua > Romanian limbă. (I don't know much about Sardinian, but I would guess the unexpected voicing is just assimilation to the surrounding vowels. The gemination is due to aqua becoming acqua in certain areas during the Latin period, as complained about in the Appendix Probi.)
The process seems to be more immediate than you've outlined, with the labialisation of the phone going from being a secondary articulation to being the only place of articulation, at the expense of the velar aspect, in one step. If betacism were a factor, for instance, we'd presumably see some effect on inherited /v/ from Classical Latin /w/ in Romanian, but we don't.
The change of
/p/ is moderately common, cross-linguistically. It also happened in Osco-Umbrian aka "P-Italic" (Oscan pis ~ Latin quis "who"), the "P-Celtic" languages (Welsh pen < *kʷennom "head"), and most dialects of Greek (Attic hippos ~ Mycenaean i-qo "horse").
The usual explanation is that
/kʷ/ has two articulations: one at the lips, and one at the velum (hence "labiovelar"). The change to
/p/ involves losing the velar articulation and becoming purely labial. But it's also possible to lose the labial articulation and become purely velar; this happened in the "satem" Indo-European languages.
/v/ derived from Latin
/b/ in certain environments did not become
/p/ in Romanian: avea "have" < *avere < habēre.
EDIT: As TKR and pointed out, hippos isn't the best example since it comes from *ḱw rather than *kʷ (even if they may have merged before the change occurred). A better one, used by Cairnavon, is hepomai ~ Latin sequor.