How can I keep different families in separate files?
I would look seriously at Family Historian. Most programs allow you to start any number of files with a different tree in each. However in Family Historian it is also possible to keep track of different unrelated family groups using named lists but in the same file. For instance family A from area x could be identified separately from family B living in area Z. Having everyone in the same file avoids lots of duplication of work with other aspects of the program.
You may download a demo version of Family Historian at:
https://www.my-history.co.uk/acatalog/Family_Historian.html#DEMV3