Dwyer put Sporting up 1-0 in the 47th minute and 2-1 with a penalty kick in the 84th. He moved past New York’s Bradley Wright-Phillips for the MLS goal-scoring lead so far this season.
Kansas City, which was playing with a makeshift back line after losing all of its central defenders to injury, international duty and suspension, had lost its last two matches. Toronto is winless in three of its last four.
Luke Moore also scored for Toronto in the 67th minute.