Actually "they have been broken up" and "they have broken up for 2 years now" would both be considered mistakes.
"They broke up two years ago."
"They have been apart
or separated for two years now."
Q. "Are x and y still together?"
A. "No, they've broken up."