It seems to me that
Jobs in energy companies are quite stable, while retailers' positions can be seasonal.
If I were you, I would take the contract job in energy company.
If you get offer from the retailer later, then you can use it to negotiate a regular job with the energy company if you please.
In this world, nobody takes care of your interests, you'd better take good care of yourself. Personal interests override company's:)