I remain sceptical. The likes of BTconsumer, Sky, TT etc usually use 12/18 month contracts to cover setup costs such as connection fee/migration fee/router cost.
Going back ~15yrs any charges used to be separate to monthly cost and a lot of ISPs did have one month contracts. When I first joined Plusnet it was a one month contract. We bought our own router and we had to pay circa £100 connection fee.
When the ISPs started offering free modems and migration, thats when the longer contracts became more popular. It wasn't anything to do with Openreach (or BTw as it was back then) it was all about getting rid of upfront costs for the consumer.