Mary I - Named by her devoutly Catholic mother for the Virgin Mary.
Elizabeth I - Named for her grandmother Elizabeth of York. Elizabeth also happened to be her maternal grandmother's name.
Mary II - Not sure. Her father had a sister Mary.
Anne- Her mother's name.
Victoria - Her mother's name. The Prince Regent (later George IV) refused to allow her father to give her a more traditional name such as Elizabeth which why she ended up as "Alexandrina Victoria."
"New" names are constantly brought into the Royal Family through marriage, including Victoria, Albert, Alexandra, Marina, Philip, and Diana. A whole collection of new names was introduced when the Hanoverians ascended the throne.
So names that we now consider "traditional" for the BRF weren't always regarded as such. Queen Victoria was the first of her name to be Queen and only the second member of the BRF to even hold that name.
So rather than rely on the four "traditional Queen Regnant" names the parents of a future queen regnant might choose another name from the pool. Perhaps George will decide to honor his mother Catherine, grandmother Diana, or another ancestor such as Queen Caroline.
As we will find, names often have more then one reason for them. Like Charlotte's middle name being both for Middletons and for the Queen.
Mary-while Catherine may have indeed thought the Virgin Mary, it was also for her Aunt Queen Mary of France.
Elizabeth- as you stated was for both her grandmothers Elizabeth of York and Elizabeth Howard-Boelyn
Mary II-was named after her ancestor Mary Queen of Scots
Anne- Anne was not only named for her mother, but many an ancestor on both sides (two great grandmothers including Anne of Denmark, and 3 maternal great-great grandmothers were all named Anne)
Alexandrina Victoria- Alexandrina was in honor of her godfather Tsar Alexander I of Russia. Her Uncle indeed refused to allow her any traditional English royal name, but ruled Victoria too German a name.
The name choices before Victoria really are of little consideration. None of those women would have ever been expected to come to the throne. Victoria her Uncle didn't believe ever would come to the throne, and seemed to resent her quite a bit. Hence leading to her unusual name choice.
There is also
Empress Mathilda- was named for her mother Queen Matilda, who was a daughter of King Malcolm of Scotland
Queen Jane- Not entirely sure, but possibly in honor of Jane Seymour who was queen when she was born (her mother was frequent at court, a niece of Henry VIII). Queen Jane died the same year as Jane Grey was born.
Elizabeth was the first woman to be born with a considered chance at the throne. There was some thought that Edward may still marry and have kids, but she was the heir of her generation at the time. Her and her daughter Anne were really the first named for any real potential for the throne.
Eh, its possible for children to be named after more than one person. For example Queen Margarethe was certainly named after her grandmother Margaret of Connaught, but I'm sure the fact it was also the name of Denmark's only Queen in her own right also played in its favor.
It may have crossed their mind, but at the time she was born, no one would have thought Margrethe would come to the throne. She was 13 when the laws were changed to make Margaret heir. When they named her, they would have 1. expected Ingrid to have a son or 2. Knud to follow his brother. So much so both Knud's sons had Christian or Frederick among their names, his younger being Christian.
While the name Margrethe having some royal lineage to it would have made it a more acceptable choice, the fact her names (Margrethe Alexandrine Ingrid) were for her two grandmothers and mother would have been the main reason. Her fourth name honored her grandfather was King of Iceland.