Richard (9-11) yielded a pair of walks and struck out five, pinpointing 71 of his 110 pitches for strikes. The right-hander recorded his second career shutout and first since 2010.
Will Venable's RBI double gave the Padres a 1-0 lead in the second inning and Yonder Alonso added an insurance run with a run-scoring single in the eighth.
The win gave San Diego a 5-1 homestead and its first home sweep of the season.
Cubs starter Jeff Samardzija (7-10) was the loser despite giving up just one run on four hits and two walks through seven frames. He struck out six.
Astronomers offer more expansive view of universe
Duggar sisters unveil Christian dating rules in new book