Differences between 推荐 and 建议 Formal definitions are not of great help. Studying HSK it is clear that 推荐 is the one use in any context where one recommends places to go/eat/do activities.
I could find here that 建议 is more about advice that recommendation. From purpleculture we could think 推荐 is a subset of 建议. I want to make sure, especially in the context of formal writing vs speaking.
推荐 = recommend (closer to push for)
建议 = suggest (closer to advice)
If you know the difference between 'recommend' and  'suggest' you should have no difficulty deciding when to use which.
推荐 applies to objects; 建议 applies to actions
Example:
推荐某人当顾问 (O)
建议某人当顾问 (X)
建议让某人当顾问 (O)
沒人推荐他 (O)
沒人建议他 (X)
沒人建议用他 (O)
孔明向刘备推荐联吳抗曹 (X)
孔明向刘备推荐联吳抗曹的策略 (O)
孔明向刘备建议联吳抗曹 (O)
孔明向刘备建议联吳抗曹的策略 (?) - 建议策略 clearly implies 建议(實行)策略, therefore omitting the verb 實行 is acceptable
孔明向刘备建议實行联吳抗曹的策略 (O)