@Jsondey
Please post a screen shot of your Flow - that will be a big help in trying to assist.
From your description, it sounds like there is a part of your Flow that looks for an existing entry in List B - it if finds one it updates that record. If not, a new record is created. I suspect that there is an issue with the part of the Flow that attempts to find an existing record. If you are using an OData filter, that is likely the source of your issue. If you are looping through each item returned and then using a condition, then there is likely an issue with the condition.
If you post screen shots of your Flow, I can suggest how you might fix your issue.