French Interior Minister Brice Hortefeux and German counterpart Thomas de Maiziere told European home affairs commissioner Cecilia Malmstroem in a letter that it was "premature" to let them enter the passport-free travel area in March 2011.
The ministers said a decision on the applications would be made once the two former communist bloc nations make "irreversible progress" in the fight against corruption and organised crime, according a copy of the letter seen by news agency AFP.
Romanian President Traian Basescu slammed the Franco-German move as "an act of discrimination."
Bulgarian officials said they would do their utmost to ease any doubts about their readiness to join.
The Schengen area allows more than 400 million citizens to travel across a territory that ranges from Greece to Finland, and Portugal to Poland, without having to pull out a passport.
The area includes 22 of the European Union's 27 members plus Iceland, Switzerland and Norway.
Romania and Bulgaria joined the EU in 2007. By choice, EU members Britain and Ireland have not joined the travel zone while Cyprus has applied to enter Schengen.
Experts from EU states who visited Romania and Bulgaria will present a report in January that will be used by governments to make a decision.
Allowing a country to join Schengen must be agreed by members states by unanimity, meaning that France and Germany have veto power over the applications.
The decision to block the entry of Romania and Bulgaria follows a summer row over France's deportation of Roma migrants from the two eastern European nations, although the issue was not cited as a reason for the Schengen veto.