This is kind of expected since you should not bridge between "L2" and "L3" interfaces. I'm not sure that MPLS is supported with IRB but if it is, then soulution would be:
bridge irb bridge 1 protocol ieee
int gi0/0.2 encapsulation dot1Q 2 bridge-group 1 int gi0/0.3 encapsulation dot1Q 3 bridge-group 1 int gi0/0.4 encapsulation dot1Q 4 bridge-group 1 int bvi 1 ip address x.x.x.x x.x.x.x tag-switching ip