I considered paying by direct debit rather than getting a bill every so often, but, for the reasons you give, I decided against it as I didn't want them having that much control over my money. In the big scheme of things, paying gas can wait and I am not having other, more urgent, payments jeopardised by them taking money.
So I am still on periodic billing, but I pay my bills online, including british gas, and for the last three years I have done my own "direct debits" so to speak by transferring money to my gas account on a semi regular basis or as and when I feel I need to chip in extra - for instance, if I know I have had the heating on a lot.
This saves me getting a huge bill, as most has already been paid, and what needs to be added is usually affordable. With the last bill I owed �5.41.
Of course this only works if you have online banking as I do, and set up the bill paying facility.
Incidentally they have never queried this - as long as they get their money, I think they are happy.