Earnshaw scored after three and 20 minutes with the Sporting consolation coming from Claudio Bieler with 13 minutes remaining.
Daigo Kobayashi and Kenny Miller scored as the Vancouver Whitecaps beat Columbus Crew 2-1.
Kobayashi put the Whitecaps ahead after six minutes only for Jairo Arrieta to equalise a minute into the second half.
But Miller wrapped up the points 11 minutes later.
Hassoun Camara and Felipe Martins earned Montreal Impact a 2-1 win away to Portland Timbers who replied through Ryan Johnson.
Jerry Bengtson scored the only goal after 62 minutes as New England Revolution won 1-0 away to Chicago Fire.
DC United beat Real Salt Lake 1-0 with a goal from Lionard Pajoy.