I'll try and break my points down to a more coherent fashion.
JTextArea -> It doesn't ley me start a new line when I want it to.
Try using a newline ("\n") with JTextPane
Nor does it let me set colours of specific words
Set the attributes in JTextPane's InsertText.
I also want the border of the TextArea to be a picture.
Swing supports custom border managers. or you can do a background image in a panel and put your widgets ontop of it.
Swing -> I want to make my JButtons look like graphics and not buttons however I want the functionality of a Swing button still available.
As has already been pointed out you can set the graphics. In addition ANY swing component can be subclassed and you can override paint() with your own arbitrary paint code.
JPanels -> I want a different background image for different panels.
Just subclass JPanel and override the paint() method. i have a standard "ImagePanel" class I use that does exactly this.
JFrame -> I want to get rid of the standard minimise, resize, exit border and replace it with a docrated border around my program.
You can set a frame "Undecorated" and then draw into it yourself.
Of course the minimise, resize, exit buttons will still be there, just look different.
OR if you want exactly the same functionality you can subclass and modify a look and feel.
Big hint. ALL an applet has to work with are AWT and Swing. If you see it in an Applet, you can by definition do it in AWT and/or Swing.