Please have a look at these sample sentences. I have 3 questions.
In the first sentence, is the でも in 因縁でもあった used in the same way as in お茶でも飲みませんか。? So grammatically, this でも is almost equivalent to が? If not, how should I understand the でも?
Is 前世で rather than 前世に used in these sample sentences because 因縁があった(ある) is considered as an action? Since in the pattern 「AにBがある」, に indicates the place where B exists while で is for the place where an action takes place.
Is there any difference between 前世で因縁があった and 前世で因縁がある?
Yes. 因縁があった is "there was an 因縁", whereas 因縁でもあった is "there was an 因縁 or something like that". 因縁 is originally a Buddhism term, but it has been neutralized and can refer to any old human relationship that indirectly affects someone's fate.
ある is a plain existence verb here, but 前世 refers to a time range rather than a place, so you don't have to use に.
Of course ある puts more focus on the current situation, but the difference is small in your examples.