Edit: There are more efficient ways of doing this, I was trying to minimally modify your code. Instead of iterating the list, you could delete the last item with: del branch[-1]
Edit2: Further simplified, you can just modify the original tree and pass it on to the output (only had a couple of minutes to look at this earlier):
import Rhino
import rhinoscriptsyntax as rs
import scriptcontext as sc
import Grasshopper as gh
import ghpythonlib.treehelpers as th
from pprint import pprint
import itertools
print x
for i, branch in enumerate(x.Branches):
if branch.Count % 2:
del branch[-1]
print("odd")
else:
print("even")
DT = x
print DT