Without the code and a modest amount of background detail, this is just a guessing game, but I see nowhere that you have configured sqldf to use a different driver than the default with the appropriate options. You have not mentioned that you have followed all the instructions relevant to PostgreSQL in the sqldf page at googlecode.com:
In the sqldf code is a line:
if (request.con) dbPreExists <- attr(connection, "dbPreExists")
You can perhaps get insight by supplyin g you connection object to a similar call:
dbPreExists <- attr(connection, "dbPreExists") #see error gets thrown.
You can also debug sqldf with:
debug(sqldf) # then repeat operation
A browser session will be started and you can single step through the process.