1) If my current employer does not revoke I-140 after I leave, can I file I-485 if my future job is a similar job as my current one?
As far as I know,you can not file I-485 after you leave you current employer
2) I am also a Canadian citizen. If I want to apply TN, what is the chance of getting it? Do I have to revoke I-140 before trying TN?
You can apply for TN Visa without any issue.You don't need to ask your employer to revoke your I-140