Mateo's ability to offload the ball was again to the fore when his deft pass helped set up a try for Kevin Locke in the 72nd minute, which ensured the Warriors would finish with the points and Tupou's second -only minutes later - just confirmed the result.
The Eels, who went in to the game without veteran second-rower Nathan Hindmarsh after he was struck down with a virus, also lost Jarryd Hayne in the first half when the star fullback went down with in injury in the opening spell.
For the Warriors, Elijah Taylor was busy on defence while prop Sam Lousi was impressive after he was given the opportunity to start the game.
The Warriors only missed 27 tackles during the game and they had periods in the second half where they had to defend repeat sets and they showed plenty of discipline.
Manu Vatuvei was placed on report in the second half for a high shot on Eels centre Willie Tonga, which could be a cause for concern.
Warriors coach Brian McClennan again pulled a late switch with his centres and yanked Krisnan Inu back to the bench and started Ben Henry who was workman-like in his performance although he rarely stood out.
Boom rookie Konrad Hurrell looked dangerous with ball in hand throughout the game and he crossed for his first NRL try in the opening 40 minutes of the game.
Hurrell, who played from the bench last week, was subbed after about an hour to make way for Inu, who came on to play against his former club.
Warriors five-eighth James Maloney also kicked a perfect six from six with the boot.
The Eels, who have struggled in the past two seasons, have lost their opening two games of the year and need to find some consistency to turn things around.
Warriors 36
(Bill Tupou 2, Kevin Locke, Feleti Mateo, Konrad Hurrell, James Maloney tries; Maloney 6 goals)
Eels 20
(Chris Sandow 2 tries, Ken Sio, Cheyse Blair; Sandow 2 goal) HT: 18-14.
Follow Daniel Richardson in Twitter