One of our problems with this story is that we do not know how old Cain and Abel were when they had their fight.
Because they are mentioned without any other child being mentioned it is assumed they are the only children and the first children. BUT that is not proven in the text...Genesis 4 is about Cain and Abel, not anyone else, so no one else is mentioned until their story is over.
But if Adam and Eve had a child each year and these children started to have their own children at age 15 or so, in a very short time, 125 years, (out of a 900 year lifespan that is) the exponential increase would be huge with 125 years being between 9 and 10 generations, on the order of between 20 billion and 289 billion people in this model (math available). So, if Cain and Abel were born during Adam and Eve's 100 year on earth, it might have had a very large population indeed by that time, given exponential growth. If they were even only 25 years old themselves by the time their religious war came to a head, how many people were populating the earth?
Also it is not proven by the text that these two were just kids when the religious war happened. Cain was trying to supplant the religion of the coats of skins for righteousness instituted by GOD with his first fruits fertility / weather cult of the Ba'als and Asherah (groves).
Genesis doesn't describe Adam and Eve having children before Cain and Abel, but it does describe them having children after Cain and Abel.
Now the man knew his wife Eve, and she conceived and bore Cain, saying, “I have produced a man with the help of the Lord.” Next she bore his brother Abel. Now Abel was a keeper of sheep, and Cain a tiller of the ground. Today you have driven me away from the soil, and I shall be hidden from your face; I shall be a fugitive and a wanderer on the earth, and anyone who meets me may kill me.” Then the Lord said to him, “Not so! Whoever kills Cain will suffer a sevenfold vengeance.” And the Lord put a mark on Cain, so that no one who came upon him would kill him. Cain knew his wife, and she conceived and bore Enoch; and he built a city, and named it Enoch after his son Enoch.
Genesis 4:1-2, 14-15, 17 NRSV
Then Seth is even highlighted as a replacement of Abel:
Adam knew his wife again, and she bore a son and named him Seth, for she said, “
God has appointed for me another child instead of Abel, because Cain killed him.”
Genesis 4:25 NRSV
As if God had not yet given Eve a child in place of Abel until Seth. And it doesn't say that Adam knew his wife many times over many years. The text simply says that the man knew his wife, she bore Cain and Abel, then Adam knew his wife again, and she bore Seth as a replacement for Abel.
When Adam had lived one hundred thirty years, he became the father of a son in his likeness, according to his image, and named him Seth. The days of Adam after he became the father of Seth were eight hundred years; and he had other sons and daughters.
Genesis 5:3-4 NRSV
"Now the man knew his wife, Adam knew his wife again, God has appointed me another child instead of able." Then the text reads, "Adam became the father of Seth, The days of Adam after he became the father of Seth; he had other sons and daughters"
A plain reading of the text Implies that Adam bore Cain, Abel and then Seth, and then other children in the later 800 years. It doesn't say "the days of Adam
before he became the father of Seth", it says, the days of Adam,
after he became the father of Seth; he had other sons and daughters.
The story says what it says, we just have a problem with what the text says because it sounds abnormal to us.
Saying that Adam and Eve could have had countless children before Seth, is like saying that God could have been creating more people out of clay in the garden alongside Adam and Eve. Sure, some things are possible, but that's just not what the text Implies.