Loop to extract json from dataframe and storing in a new dataframe
Finally I got an amazing improvement thanks to stack overflow, regarding two things:
https://stackoverflow.com/questions/10715965/add-one-row-to-pandas-dataframe
https://stackoverflow.com/questions/37757844/pandas-df-locz-x-y-how-to-improve-speed

Also, as hpaulj pointed, changing to json.loads slightly increases the performance. 

It went from 16 hours to 30 seconds

row_list = []

for i in range(len(df)):
    dict1 = {}
    dict1.update(json.loads(df.at[i,'raw_content']))
    row_list.append(dict1)

df1 = pd.DataFrame(row_list)

df2 = pd.concat([df['email_id'],df1],axis=1)