So many elements of this match up with Guy Gavriel Kay's 1990 novel Tigana that I'm convinced it's what you're looking for. You've just misremembered a few things; I think you've combined two characters.
The following is pretty much all spoiler, so I'll preface with the thought that it all fits if you conflate the characters Baerd, Brandin and Alessan.

(Source: Wikipedia, fair use)
Tigana is set in the Palm, a collection of small states that have been conquered from either side by sorcerors from empires bigger than them -- Brandin from Ygrath in the West and Alberic from Barbadior in the east. One of the small states, Tigana, is under especially brutal treatment, because Brandin's son Stevan was killed during its conquest. Tigana is under a spell that suppresses all memory of the place's existence, a kind of slow genocide.
There is no "princess" but there is an analogue: Dianora, daughter of one of the Prince of Tigana's councillors. She and her little brother Baerd spend years after the conquest in poverty and oppression in Tigana (renamed "Lower Corte"), and in their isolation, there is a great bond between them.
But Baerd grows up. After Baerd is beaten badly during a run-in with Brandin's soldiers, Dianora and Baerd become lovers. Baerd is so ashamed by this that he runs away and meets up with the only remaining royal, Alessan, prince of Tigana.
Much of the novel deals with Alessan's wanderings, from various viewpoints, with Allesan gathering allies and sowing the ground for overthrowing both wizards at once (if only one was overthrown, the other would easily conquer the rest).
Dianora, resolving to kill King Brandin, slips away and works her way up to be one of Brandin's concubines. Now she's Brandin's favorite but for some reason keeps putting off her assassination attempt. She even foils a different attempt, at which time the assassin (from Brandin's home kingdom) invokes Brandin's dead son.
This is where the Fool reflecting the King's emotion comes in. While Brandin stands there emotionlessly, the Fool (called "Rukh") rages and beats the assassin to a bloody pulp, continuing long after he's dead.
After this, Brandin decides to marry Dianora, abandon his old kingdom and just be king of his part of the Palm. She is torn about this, but sees the riselka that is the subject of the folk rhyme you've labeled a "prophecy".
One woman sees a riselka: her path comes clear to her.
This causes her to attempt the "marrying the sea" ritual (see also this) you mention: Brandin throws a ring into the sea, and Dianora dives into the sea to find it. She intends this as a form of suicide, an omen to bring Brandin down, but her conflicted feelings cause her to succeed!
And just as you say, when Dianora surfaces with the ring, the Fool gasps and drops to his knees in anguished relief.
So, a lot more things happen in the novel, but in the climactic battle, we finally get the Fool's viewpoint:
Brandin, needing the last measure of his magic to defeat Alberic, releases the spell binding Tigana and the Fool, who is actually the former ruler of Tigana, prince Valentin, Alessan's father! As he regains his will, he takes his sword (Bradin had him always carry it as a further humiliation) and slays Brandin.
The final paragraph clinches this identification:
Three of the characters (Baerd, Devin, and Duke Sandre) round a bend
And it is there that they see the riselka, three men see a riselka, sitting on a rock beside the sunlit path, her long sea-green hair blowing back in the freshening breeze.
THE END
I found myself furiously leafing back to find the folk rhyme, which says:
Three men see a riselka: One is blessed, one forks, one shall die.
You're absolutely right, best fantasy ending ever, best fantasy novel ever.