JFreeChart praticamente non la conosco (avevo fatto qualcosa ma tanti tanti anni fa). Quindi su questa libreria non saprei dirti di più (e non ne conosco altre per i grafici).
La soluzione del custom painting è fattibile, se non hai bisogno di chissà che cosa, ma richiede che tu abbia le idee abbastanza chiare su come funziona il painting in Swing nei componenti, come applicarlo correttamente e come usare gli oggetti Graphics/Graphics2D.
Nulla di impossibile, ovviamente, ma se parti praticamente da zero è più difficile.
Se sai l'inglese, puoi vedere il tutorial ufficiale:
- Performing Custom Painting
- 2D Graphics
Se hai dubbi chiedi pure, questa "materia" la conosco molto bene.(e trovi esempi sul custom painting tra i miei Java Examples)