There is a way to do this. You son would have to be a dual citizen and you would have to wait until he turns 18. He would have to renounce his Canadian citizenship and you could then sponsor him for PR. You may have to be living in Canada in order to sponsor him or otherwise show plans to move to Canada when he gets his PR. As a PR, he would have to live in Canada for 3 years (or 4 if they change it) and then he could apply for citizenship. He would then be a naturalized Canadian as opposed to Canadian by heritage and could pass citizenship to his children regardless of where they are born.
However, I don't think this is something you need to worry about. If you are currently not living in Canada and your son chooses not to live in Canada and marries a woman who is not Canadian, why do their children need citizenship? If on the other hand, your son chooses to live in Canada and either marries a Canadian woman or sponsors his wife for PR, then their children will be born in Canada and they will be Canadian. If he marries a Canadian woman or he sponsors his wife for PR and she later applies for and gets citizenship, their children can get citizenship from her even if they are born outside Canada. Even if that is not the case, say he lives outside Canada his whole life and marries a non-Canadian woman and continues to live outside Canada and their children are born and are not Canadian, should he later decide he wants to live in Canada, he can sponsor his whole family, wife and all his kids for PR and they can all move to Canada and he can apply for his children citizenship right away.