That did the trick, thanks so much Delutto! Even works for custom images too, they were showing up black before. Just as a heads up in case anyone happens to have this problem in the future, here's how I did the images.
Use rawtex to convert the file to .dds with these settings - offset to 9df , width and height to 1920 x 1080 , image type to r8g8b8a8_unom
Notice the DDS will be flipped upside-down but colors are correct.
Flip the image vertically and do your normal edits.
Before saving it out, swap the red and blue channels (no need to flip the image back vertically)
Save as .tga 32bit with alphas
Open the image as well as the original archived version in a hex editor
Replace blocks 0-11 of the TGA with blocks 0-9DE of the original file (the Phyre header stuff)
Delete the last 20 blocks from the TGA (Truevision-xfile stuff)
Save and it's done. Rename the TGA and replace the original archived version, then repack the .cpk with YACpkTool
It's super basic stuff and I'm just a beginner to this but hopefully it helps someone... There's probably much cleaner/easier ways of doing this but it's pretty fast and it works.
I don't get why the red and blue channels need to be flipped though to be honest. It's weird that in rawtex the images appear upside down with correct colours... If you reimport an image the right way up with normal colours it will show up right way up with red and blue channels swapped. It's only if you save right way up with red and blue swapped that suddenly the image will flip upside down and be correct in game. I'm sure others will the know the answer to this of course haha.
Transparency works fine too, here's a super quick test, replacing a tutorial message with a random monkey image