Oswaldo Alanis scored from the penalty spot and Cristian Espinoza added a second-half goal after missing a first-half penalty for the Earthquakes (1-1-0, 3 points), who won their first home opener since 2018.
San Jose substitute Chris Wondolowski was sent off in the 89th minute for his challenge on Jose Andres Martinez following a video review.
Ricardo Pepi scored his third career MLS goal late for Dallas (0-1-1, 1 point), which has yet to hold a lead this season.
Dallas goalkeeper Jimmy Maurer exited the match in the 61st minute with an apparent lower-body injury.
Cowell, 17, previously made four starts in 2020. The Earthquakes opted against making a splashy signing to replace Danny Hoesen, thus Cowell has been given the first chance to earn the starting role at center forward in his second campaign.
After failing to break through last week against Houston, Cowell repaid manager Matias Almeyda's faith four minutes after halftime on Saturday. He picked out Espinoza with a gorgeous diagonal throughball.
Espinoza had time to compose himself, then chip his finish over a charging Maurer to double San Jose's lead.
Cowell effectively sealed the match 10 minutes later. He reached Carlos Fierro's ball forward down the right, carved out space between a couple Dallas defenders, then drove a low finish past Maurer and inside the left post to make it 3-0.
It might've been an even more lopsided defeat had Espinoza converted San Jose's first penalty after he earned it by inducing Jader Obrian into a foul.
But the hosts won a second spot kick in the 34th minute for a handball on Tanner Tessman that was spotted via another video review.
This time it was the defender Alanis who stepped up and drove a finish low and to Maurer's left, giving the goalkeeper little chance.
17-year-old American Cade Cowell puts on a show in San Jose
Cade Cowell produces an amazing goal and even better assist as the San Jose Earthquakes beat FC Dallas 3-1.