Few questions we need to ask: How long were Adam and Eve been living together before they had a child? How many children were born to Adam and Eve in the span of 130 years? Although the Bible didn't say, at a birth rate of 1 child every 5 years, the first couple would have about 26 children in the first 130 years; and if 1 child was born in every 10 years, they would have at least 13. Now, another question we need to ask is how many of their children married each other and have children of their own in the span of those years?
How many grandchildren and great grandchildren Adam and Eve had in the first 130 years? No doubt, they had many grandchildren and great grandchildren by the time Abel was dead. This means that Cain had many nieces and nephews during those early years.
If we read Genesis 4:1, we will notice that it didn't say Cain was the first child of Adam and Eve. He was the first SON, but not necessarily, the first child. It is possible that Adam and Eve had a daughter or daughters, before Cain because Eve said " I have acquired man from the Lord". It looks as though she had daughters prior to Cain. While it is not certain that Cain had older sisters, we can conclude that Adam and Eve had daughters after Cain was born that are not mentioned in the Bible. As we are aware that the name of daughters are not usually mentioned in those days.
The phrase, "..anyone who finds me will kill me" also show that those people whom Cain were afraid of must be related to Abel whom he killed. Why would Cain be afraid to be killed by people from other race who know nothing about him, unless those people are related to Able? Why would other race care and how would they know he killed a brother? Thus, when Cain killed Abel, it was known to entire family and to the whole clan. Cain was afraid his relatives will take revenge for killing his own brother.
Because Cain had other brothers and sisters as noted above, the answer to the question is Cain married one of his sisters or perhaps one of his nieces.