Because it is still a form of gambling so luck has a role in order to win even though the chance is higher. Unlike other types of gambling, in sports betting there are many factors that will help you to win like the popularity, their records or listen to some opinions of sports analyst.
The fact that it is gambling is the main reason that you won't earn money from it as much as you want.
Betting on sports does not have an house edge but I think the reason you are not winning is because you are betting on the wrong team. Sports betting is also gambling but what made it a little better from other gambling games is that you can monitor the teams performance and progress and if you will review there statistics then it will give you and idea which team has an edge over another. I know most bettors mostly bet on their favorite teams regardless of the performance or stats, so I guess that’s what made it difficult for some to win even in sports betting.