I think you can use both "ganddo fo" and "gynno fo" for "he has". "Gynno fo" is the form taught in the northern "cwrs mynediad", but DuoLingo seems to prefer "ganddo fo".
Just wondering - would blond be acceptable? That's common usage in the US. We do say "fair haired boy" to mean someone especially favored, but not as a normal way of describing one's hair.