Don’t buy the cheapest. I have an HP all in one that was £130, it’s been great.
Your problem is almost certainly a driver or software issue. Do not get a new printer.
I have spare cartridges but I can’t understand why it likes printing a test page properly but not an actual document
See above. The test page comes from the printer software or even the printer itself, the document comes from beyond that – Acrobat Reader in this case.
HP cartridges contain the nozzles, so when you buy a new cartridge you’re getting a new print head, which is the clever bit, and means you should only be a new cartridge away from something that works
Not quite true. Most printer manufacturers do this with their cheaper printers. It’s actually a con, because whilst the printer is really cheap the cartridges are really expensive because of the print head. If you buy a more expensive printer with a more durable head, and the plumbing to accept individual cartridges, it works out cheaper in the long run.
My HP has individual cartridges.