How to set a new taxonomy term without overwriting an existing one when using Rules?
The Rules Action Set a data value that your Rule uses, can only set 1 value, while you're trying to update something that is a list (or to use your own words: "...  set a new term without overwriting an existing one").

So try to replace your Rules Action (ie with the data_set) with an action "Add an item to a list". When doing so, you probably also want to set "ENFORCE UNIQUENESS" to true, so that you "only add the item to the list if it is not yet contained". Even though for your case it may not make a difference, IMO that is a kind of safety-belt when using this action.

For way more details about this, refer to "How to set multiple values to an unlimited Term Refence field with Rules". While reviewing this, also pay attention to the "Fetch entity by ID" (within the Rules loop): I wouldn't be surprised if you'd also need to add a similar "Fetch entity by ID".

Ps: I'm assuming this question is about D7 ...