ISPs usually must commit to a certain quantity of lines from the big DSL networks. Contracts make this more likely to be achieved. Contracts are preferred because of the investment in infrastructure the DSL providers and ISPs have made. They don't expect to make much money from you initially, especially as a new user usually needs expensive installation time, and often gets discounts on the equipment. This is similar to the beginnings of the cellular phone market, where the equipment was tied to a cellular provider, and sold at a discount, in return for a minimum service term. As DSL becomes more common, these contract lengths will probably be reduced or eliminated. No contract service is certainly available, just ask for it. It may cost more or you may have to pay for installation though.
ISPs also keep an eye on the capital value of you as a customer. People on contracts are more valuable to them in the case of a future sale or ISP takeover, than people on month-by-month. The value of you as a 2 year DSL customer now, in a takeover deal, can be over $1000 !