Their S1.
[All] azaleas bloom if and only if they are fertilized
lets me deduce that if I have an azalea, and I fertilize it, it will bloom.
Your S3.
[All] azaleas [are azaleas that] bloom if and only if all azaleas are [azaleas that are] fertilized
does not imply this. S3 only implies that if all the azaleas in the world are fertilized, then the one I have chosen will bloom, because all of them will bloom. It does not assure me that if my neighbor neglects his azaleas, mine will not be affected.
So these do not mean the same thing from the very first step.
You have introduced two separate 'Alls' where there is only one.
In S1: The nature of the pronoun (they) is to protect its antecedent 'All azaleas' (to the left of the 'iff'), not to choose another instance of new azaleas (separate from 'All azaleas' introduced to the left of the 'iff') at random. So "when they are fertilized" means "when those same azaleas are fertilized".
In your S3: By writing 'all azaleas' again instead of using a pronoun to the right of 'iff', you are wrongly referring to the whole class (of azaleas) named, because you should refer to only the azaleas already introduced to the left of 'iff'.
So
All azaleas bloom, when they (those same azaleas) are fertilized
Is not grammatically similar to
All azaleas bloom, when all azaleas are fertilized.
The former means something like
(x)(Azalea(x) -> (Blooms(x) <- Fertilized(x)))
Naturally, without any noted link via a name or pronoun, each 'all' would get its own free variable.
So this latter would become:
(x)(Azalea(x) -> Blooms(x)) <= (y)(Azalea(y) -> Fertilized(y))
which kind of imagines some magical communion of all azaleas that can determine whether azaleas in far away lands got fertilized or not...