Given x ⊕ x =5,x ⊕ (y ⊕ z) = (x ⊕ y)+z-5 what is 2009 ⊕ 1949

This is the kind of thing that you can only find out by exploring substitutions. Doing a bit of trial in the 2nd condition I found a couple of relations that can solve the problem by substituting z for y, and then substituting both y and z for x.

x ⊕(y⊕z) == (x⊕y) + z - 5 /. 
  z -> y //. CirclePlus[x_, x_] :> 5
(* x⊕5 == -5 + y + x⊕y *)
x ⊕(y⊕z) == (x⊕y) + z - 5 /. {y ->
     x, z -> x} //. CirclePlus[x_, x_] :> 5
(* x⊕5 == x *)

From the first relation we can easily get that x⊕y==5 - y + x⊕5; from the second sit is clear that this expression can be further simplified into x⊕y==5 - y + x.

Finally using this as a single rule applied to 2009 and 1949

2009⊕1949 /. {x_⊕y_ :> x + 5 - y}
(*65*)

This is the result that Ulrich Neumann has mentioned in the comments, and is the operator that Roman has suggested in the comments as well.