Why does the Torah list Er and Onan, who died in Eretz Kena'an (as the Torah itself states)?
Ramban (in Pasuk 2): This has to do with Gilgul (reincarnation). 1
Which the Ramban consistently refers to in vague terms. He also refers to his explanation on 38:8, in Vayeishev.
And why does it fail to list the sons of Sheilah and Zerach?
Targum Yonasan: Because all of their children were born in Egypt.