Is there a website, like an archive where one can watch past f1 races? for instance monaco grand prix 2004?
As of 2019, F1TV is now available and is run by Formula One. It offers annual or monthly subscriptions with access to "650+ races from our archives", clarified elsewhere as "...1981 to the 2018 season".
[Older information for historical reference]
Not legally, no. Rights to Formula One coverage are controlled by the commercial rights owner (Formula One Administration - see here http://www.formula1-dictionary.net/admin_force.html).
It is highly unlikely that any broadcaster with the rights to broadcast F1 races would be permitted to provide open access to internet at large in any case.
In the UK, Sky F1 trend to run repeats of archive races way back to the early races in the fifties. Alternatively, the FOA have historically released season reviews on video and DVD, including the 2004 season.