Bingo! My curiosity just got the better of me (and you owe me several cups of coffee!).
I had a hunch ....
James Sangster, son of James Sangster and Agnes Glennie, married Bessie Pringle in 1896.
In 1901 Robert Sangster, 27; Catherine Sangster, 26; Annie Sangster, 5; and James Sangster, 1 were in Leith North. In 1911 Robert Sangster, 36, Jessie Ann Sangster, 25; James Sangster, 11 and Alex Sangster, 1, were in North Leith, as were James Sangster, 41; Bessie Sangster, 41; and Catherine Sangster, 9.
Catherine Sangster or Christie died in Edinburgh in 1907, aged 37. (This did not come up when I searched for a death using both surnames, but I got her as Sangster and subsequently also as Christie.)
Robert Sangster, marine stoker, widower, of Leith, married his cousin Jessie Ann Glennie (in a double wedding with her sister Jeannie) in Ellon in 1909. His parents were .... James Sangster and Agnes Glennie.
So James Sangster, husband of Bessie Pringle, was the brother of Robert Sangster, husband of Catherine Christie and then Jessie Ann Glennie.
I speculate that James and Bessie more or less adopted his brother's children James and Catherine after the death of their mother, and that Catherine may not even have known that she was their niece rather than their daughter. It's harder to account for James jr describing himself as James' son, because he was still with his father in 1911 and must have known that it was Robert, not James, who was his father.
Any thoughts, anyone?