In all honesty it completely boils down to luck and the RNG. I still have terrible luck, but there was, for a brief, shining moment, a time where the odds seemed to be in my favor. I’ve gotten dupes for a good handful of 4*s.
Of course, ever since then it’s been pbbt. Nothing but 3*. I seem to have better luck when I’m not breeding 5* x 5*, but that could very well be coincidence.
I agree with @CaptWacky in saying that the best and most efficient way of getting 4* dragons is to join a clan that allows you to receive level 7 chests. This ensures a random 4* dragon, which you can use to breed more 4* (and try for higher and/or hybrid) dragons.
Also, a good tip I picked up along the way from those here on the forums is that when you do get a good dragon, if you get a dupe, instead of leveling it up right away, use it to breed with the original dragon.
I.e, if you get a 4* Revenger, and get a dupe, breed them together for a better chance for that third dupe you need, or even better, the Shrill Boltbeak. As, again, @CaptWacky said, your chances arn’t bettered or worsened by the level of your dragon. So you can use freshly trained dragons to breed.