While the diplomatic system certainly requires tweaking, and warmongering penalties are indeed too severe even when there is a casus belli in place, I have found it easy enough to manipulate the AI to become friendly if I really try.
As I've posted in other, similar threads, I think one of the issues here is we are simply not used to factoring in the AI's reaction during our decision making process.
We've all started changing our playstyle to get as many Eurekas/Inspirations as possible, right? but I'm sure most of us are still completely ignoring what the AI likes/needs and expecting them to like us anyway.
For those willing to try it out, I've been doing the following in my last two games:
-Declare as many wars as you like and generally don't worry much about what the AI thinks during Ancient era.
-During Ancient Era, watch closely the AI's reactions in order to figure out their hidden agendas.
-Decide, during Classical Era, which Civs you would like to Ally with in the future. I recommend choosing those whose agendas fits your strategy.
-Send your future Allies trade delegations whenever possible, as many times as you can afford.
-Make sure you are always following their agendas.
-Trade, trade, trade. Even if the trade deal is not always ideal. Renew those trade deals when they finish, always have some sort of trade deal with each of your future allies.
-Always fullfill promises.
-Create an embassy everywhere as soon as they are available.
-Use Casus Belli when declaring a war, liberating city states helps reduce your warmongering penalty a lot.
-Keep asking for a declaration of friendship.
-Once friendly, keep asking for alliance.
Good luck