Jean-Claude Juncker said changes to Turkey´s anti-terror laws were one of a number of conditions that needed to be met for visa liberalization.
Turkey has refused to do so, saying it needs the laws to fight militants and has now accused the EU of "hypocrisy".
The visa issue is part of a deal aimed at easing Europe´s migration crisis.
"We consider that it is important for these conditions to be fulfilled. Otherwise, this deal between the EU and Turkey will not happen," Mr Juncker said.
According to Mr Juncker, "If Mr Erdogan decides to deny Turks the right to free travel to Europe, then he must explain this to the Turkish people. It will not be my problem, it will be his problem".
In a fierce speech, Mr Erdogan reacted angrily to the European demands, saying: "Since when are you running this country? Who has given you the authority?
"They believe they have a right for themselves (to fight terror) but find it a luxury and unacceptable for us. Let me say it clearly - this is called hypocrisy."
The EU and rights groups have accused Ankara of using its broad anti-terror legislation to intimidate journalists and stifle dissent. But the government denies it, saying it needs the laws to fight militants, and has warned the EU that it will not change them.
There are fears the whole migrant deal could collapse if the visa dispute is not resolved.
The agreement was largely negotiated by outgoing Turkish Prime Minister Ahmet Davutoglu. Mr Juncker said that Mr Davutoglu´s departure could not jeopardise what had been previously agreed.
"We are counting on this, we agreed this with the Turkish government and it can´t be that the exit of the prime minister leads to agreements between the EU and Turkey being ignored," he said.
Under the EU-Turkey agreement, migrants who have arrived illegally in Greece since 20 March are to be sent back to Turkey if they do not apply for asylum or if their claim is rejected.
For each Syrian migrant returned to Turkey, the EU is to take in another Syrian who has made a legitimate request. Turkey has already threatened to stop taking back migrants from Greece if the EU fails to deliver on the visa issue.