5p cut on fuel duty will be extended to the end of the year, instead of being phased out in September, the government has said.