Manchester City have swung the Premier League title race in their favour by beating Arsenal 2-1 with a second-half winner from Erling Haaland.