s/([A-Z]+?)[^A-Z]/-C-$1/g;

Ho spostato la parentesi in modo da includere il primo carattere ed ho fatto in modo che la "parola" si chiuda con qualsiasi carattere diverso da maiuscola.
Prova a vedere se ti va bene.

Forse si puo` anche togliere il [^A-Z] e lasciare semplicemente:
s/([A-Z]+?)/-C-$1/g;