Gordon Brown suffered one of the biggest backbench revolts since becoming prime minister last night as 28 Labour rebels backed an amendment to a housing bill calling for more resources for council house building and repair. The rebellion failed to check the bill's progress as opposition MPs voted with the government. But it signalled backbench unease that the government is failing to meet the demand for social and affordable housing.

Michael Meacher, Labour MP for Oldham West, said demand for social and affordable housing in the UK "far exceeds" the government's plans and it is "unrealistic" to rely on the private sector to build the required homes.

The government plans to have 3m new homes built by 2020 at a rate of 240,000 a year, but Meacher said that with problems in the sub-prime mortgage market spreading to the UK, there was no chance that private firms would build this many.

Earlier, ministers offered a carrot to assuage backbench concern on another aspect: the bias and misinformation that skews ballots in which council tenants vote on whether to transfer their properties to housing associations. Defenders of council housing have claimed that councils, desperate to offload property and release resources, bombard tenants with loaded information, and threaten them that investment in their home will collapse unless they agree to the transfer.

The housing minister, Ian Wright, agreed that information in the past has been one-sided and promised to introduce a code of practice on the ballots.

The government moved on the issue of ballots after Labour rebels, backed by Liberal Democrats and Conservatives, backed a motion insisting that council tenants be given fair and accurate information on the ballots concerning the large-scale transfer of housing stocks from council ownership to housing associations.

Austin Mitchell, the Labour MP for Great Grimsby, said ballots were being conducted on the basis of "bribery, bamboozlement and bullying" of council tenants into privatising their housing stock. A vote on the amendment late last night was rejected by 263 to 210.