I think this is work as intended. This function has been for a while and I also thought I can remove xp not the level. There is only a target selector for level (l, lm) but there is no for specific xp
It doesn't work also on other stuff like splash potion, etc.
Isn't like /testfor @s[hasitem={item=potion, data=0, location=slot.weapon.mainhand}] ?
I think this is work as intended but it is annoying that it does like that and I have to type it on chat every time I rehost my world.