They really had no choice about that part. The spike (beyond their control) in energy prices was set to bankrupt hundreds or even thousands of small businesses and put many people in a situation of deciding between heat and food.
Hello from Texas, where electricity providers are free to pass on absurdly-high energy prices to customers, regardless of whether those people can afford to eat or not.
Yes, they really could. We're not talking about your energy supplier company, we're talking about electricity producers and fuel suppliers (oil and gas companies). Different set of companies and they are indeed raking it in.
Energy suppliers are just middlemen and are making huge losses due to the price caps, but energy generators are making loads of money. (At least in operating profit; some - but not all - have had huge losses from writing off their Russian operations.)
It is not beyond their control. Britain has significant amounts of gas production capacity, and they could thus pass emergency legislation to reduce the price. For instance, they could insulate the domestic market from foreign buyers by implementing export controls.