When did they say what? That Tidus is just a dream? As far as I remember he first realized that he was a dream, when he entered the anima caves or how they call it, on top of the mountain of the Ronzo( sorry, I really suck at names). There he finds out, that he is just a dream of someone who once existed.
And if you didn't get the all-so-subtle hints there you will eventually find out during the last Cut scene.
But I completely disagree, the hero being a dream did not suck for me. It gave that final victory a taste of sadness which created probably the most beautiful ending I could've hoped for with an astonishing sad vibe. Beautifully executed.
If you wanna talk endings with dreams that suck, talk about that Zelda game for Gameboy, where in the end it turns out, that all the shit you've been doing in the course of the game including some very annoying parts, was just a goddamn dream of lil' Link. That was really, really bad.