If you are staying in Toronto the night before and flying out of Terminal 3, try staying at the Sheraton which is connected to the terminal via a walkway. When we had early morning flights from there, we would get up at 4:30, get ready and arrive at the checkin counter at 5, just in time for the immigration to open up.