Hi Geh,
You should should be able to make ping from the 2540 to any station in any of your VLANs (1,20,30). If so, your virtuals interfaces on the 2540 are up and forwarding.
You have configured your default route to your default gateway (192.168.1.10) with these commands:
ip default-gateway 192.168.1.10
ip route 0.0.0.0 0.0.0.0 192.168.1.10
I would use just only one, both do the same, so, just in case, delete one of them.
If you could ping from any station in any VLAN to any other station in another VLAN (avoid doing it from any router as the source or the destination for the ping command), then your 2540 is routing correctly among all your VLANs directly connected to your 2540.
Now go to any station in VLAN 20 and make a trace route to any station behind your MPLS network (behind your default gateway 192.168.1.10), if you cannot see answers from any hop farther than your 2540, it would mean that your default gateway 192.168.1.10 does not know the next hop to return packets to VLAN 20, and it is routing towards any other gateway. So, as Herman said, I think you should talk to your provider in order to add the return routes in your default gateway and the MPLS behind it.
Regards