It was Arsene Heitz, a Frenchman working for the postal service of the Council of Europe, who submitted the winning design (out of hundreds) based on his native city's (Strasbourg Cathedral, France) image of the Blessed Virgin Mary having a halo of 12 stars. Perhaps to hide this reference, he submitted his flag design with 15 stars instead.
Paul Michel Gabriel Lévy, a Belgian who headed the Department of Culture of the Council of Europe, on which befell the duty to award the winning design, cropped the number of stars to 12 to symbolize the description of the Virgin Mary in the Bible's Book of Revelations. (Levy was a Jew who converted to Catholicism after surviving WWII.)
The flag was adopted by the Council of Europe on December 8, 1955, the Feast of the Immaculate Conception, maybe unbeknownst to many then. It was also adopted by the EU on May 26, 1986.
Amado