David Sinclair, 34, became angry that little Joshua wouldn't feed and shook him for 'approximately five seconds' but the tot died in hospital hours later.
A court heard that Sinclair had been left alone in his home in East Kilbride, South Lanarkshire, with the youngster when the incident happened in 2012.
Sinclair was originally charged with murder but pleaded guilty to the lesser charge of culpable homicide days before he was due to face trial.
He had returned to Glasgow's High Court for sentencing on Thursday but proceedings were delayed after a letter from his wife Kirsty Sinclair, who is pregnant, was handed to Judge Lord Bracadale, accusing Sinclair of "misleading" her.
Previously, the court heard Mrs Sinclair was standing by her husband, who she married on what would have been Joshua's first birthday on July 9, 2013.
Sinclair's lawyer Iain Duguid QC told the court: "Her clear position is that the suggestion that she was standing by him is misplaced.
"If that is her position which she has adopted since the time of the plea, I really have nothing to say about that."
The judge said the letter suggested Sinclair "effectively misled his wife from the word go over a lengthy period of time"
Sentencing, the judge told Sinclair: "You assaulted your baby son by shaking him, causing the injuries which killed him.
"You must have known at the time you had shaken him, but you did not disclose that. It was only after extensive medical investigations you admitted what you had done.
"Your wife believed in you. She now feels she had been misled by you and can no longer support you."
Sinclair showed no emotion as he was led away to begin his sentence.