Let's clarify two separate concepts here. First: can a creature with reach block a creature with flying? Yes — reach explicitly allows a creature to block creatures with flying, just as if the reach creature itself had flying (CR 702.17a).
Second: can a creature block an attacker that is already blocked? Yes, multiple creatures can block the same attacker. During the declare blockers step, any number of eligible creatures may be declared as blockers for a single attacking creature (CR 509.1). The attacking creature becomes "blocked" as soon as at least one blocker is declared for it (CR 509.1h), but additional blockers can still be assigned to it in the same step.
So if a flying creature is attacking and already has one blocker assigned to it, a creature with reach can also be declared as an additional blocker for that same attacker in the same declare blockers step — there is no rule preventing it.
Example: Your opponent attacks with a 3/3 Flying Drake. You declare your 1/1 Bird as a blocker. You may also declare your 2/4 Spidery Grasp creature (with reach) as a second blocker for that same Drake in the same blockers step. The Drake is blocked, and both creatures will deal and receive combat damage, with you controlling how the Drake's damage is distributed among them (CR 510.1c).
In summary: reach allows blocking flying creatures, and multiple blockers on the same attacker is perfectly legal — even if that attacker already has a blocker declared.
Unofficial fan resource — not affiliated with or endorsed by Wizards of the Coast. Answers are AI-generated estimates grounded in the Comprehensive Rules and are not a substitute for an official judge. Verify anything match-critical.