Paraguayan forward Lucas Barrios, who joined Guangzhou earlier this year from German champions Borussia Dortmund, grabbed the winner with nine minutes to go.
Cleo gave the home side a 26th-minute lead, but Shandong equalised 10 minutes later through Gilberto. Zheng Zhi restored Guangzhou's lead 11 minutes into the second period, but Han Peng levelled again before Barrios finally settled it.
Guangzhou R&F now trail Evergrande by 10 points in third place after a 2-1 defeat away to Changchun Yatai.
Dong Wang gave the home side a 28th-minute lead before Zhang Yuan hit back for Guangzhou, but Liu Weidong's goal midway through the second period proved decisive.
Henan Jianye remain bottom after a third successive CSL defeat, losing 3-1 at home to Hangzhou Greentown.
Goals from Xuan Cao (12) and Renatinho (34) put the visitors in charge and, although Zambian forward Christopher Katongo pulled one back for Henan, Song Wang's 90th-minute penalty confirmed Hangzhou's win.