Load balancing is very much possible in MPLS environment. Following are the general rules for load balancing labeled packets
1. If the MPLS payload is an IPV4 packet, the load balancing is done by hashing the source and destination IP address of the IPv4 header
2.IF the MPLS payload is an IPv6 packet, the load balancing is done by hashing the source and destination IP address of the IPv6 header.
3.If the MPLS payload is not an IPv4 packet, the load balancing is done by looking at the value of the bottom label
Label stack does not have protocol identifier field so to know what is the MPLS payload is, router can look first nibble following the MPLS label stack, if it is 4 then router considers this an IPv4 packet and performs IPv4 CEF hashing. if it is
6 , MPLS payload is considered IPv6, and the router performs IPv6 CEF hashing
For more information you can refer book "MPLS fundamentals" by Luc De Ghein.