I'm sorry to ask, but aren't you contradicting yourself there: on the one hand, you say that you think that Greek expansion cannot explain the occurence of J/E in northern Europe, but at the same time you mention the absence of all the Haplogroups in Iceland. Wouldn't that suggest that indeed the expansion of the Haplogroups must have been late?
No, I am not contradicting myself. I never said that the Greeks progressively moved up to northern Europe. Their haplogroups may have, after mixing with Italian people after settling in South Italy, then mixing with Gauls, then mixing with Germans, etc. so that, after hundreds of generations, only a fraction of the original Greek genes besides the Y-chromosome remained when the carriers of E-J-T haplogroups reached northern Europe.
I was rather suggesting that E/J spread progressively from the Roman period until modern times by the constant movement of population and intermarriages within Europe. Most people may only move 5 or 10 km away from their birthplace (more since modern transportation), but that is enough to spread haplogroups in every directions on hundreds, then thousands of kilometres as centuries and millennia pass by. The more time passes the more mixed up haplogroups become within a population with open boundaries. The only things that tend to slow down the mixing process are language boundaries and geographic obstacles like seas of high mountains. Nevertheless no obstacle is impassable. Seas are crossed (though more slowly than on land) and languages evolve and get replaced over time.
To sum up, I think that there were several major migrations of E-J-T from Mesopotamia and the Levant to Anatolia, Greece and Italy during the Bronze Age. This included the Minoans, Phoenicians and Etruscans. Then the Greeks started setting up colonies from around the Mediterranean (especially South Italy and the southern coast of France as far as Europe is concerned). The Romans further spread E-J-T throughout their empire, and settled particularly heavily in south-eastern France, which had a climate and geography similar to Italy. The descendants of the Romans all over the empire had their own children, who moved in all directions over the centuries, spreading E-J-T around various European countries, and progressively across borders towards northern and eastern Europe, a process that is still ongoing today.
If this theory is true, we shouldn't find haplogroups E-J-T in northern Europe, including northern France, Germany and Poland during the Neolithic and Bronze Age. It would be unlikely to find E-J-T outside the borders of the Roman Empire (e.g. in Ireland, Scotland, Scandinavia, North Germany or Poland) before the medieval period. There isn't exactly a wealth of ancient DNA available, but among the results available, the oldest E-J-T in northern Europe is a E1b1b in northern Germany dating from only 800 years ago. All the other results from Germany were haplogroups G2a, I1, I2b, R1a and R1b. Not a single E1b1b, J1, J2 or T before 1200 CE so far. This would be strange if they arrived during the Neolithic or Bronze Age considering that E-J-T represent as much as 16% of German haplogroups today.