If you have two CSV Data Sets, with the same variable names, at the same level in the Test Plan Tree, you will see the behaviour you describe. If they both have a variable called var1, for example, it will have the same value throughout the level.
You can use the Simple Controller element, so that each CSV Data Set Config is on its own level, and the variable values are not shared.
Simple Controller has no logic, other than grouping other elements together, so all you need to do is create two, and move the other elements beneath it.
BROKEN
WORKS