You can prevent the closure by saving b in a local variable with for b in [b]:
b
for b in [b]
gen_factory=((pow(b,a) for b in [b] for a in it.count(1)) for b in it.count(10,10))
Attempt This Online!