I hope the switch is connecting to the CE device and on the router VRF lite configured.
The switch vlan from which the interface is connecting to the Ce device (provider) has no mac learning enabled.
So if the tcp and udp is makeing it thrugh the switch, then the icmp should also make through, unless we have any firewall on the CE blocking icmp communication on the ingressor any such filter blocking the icmp on the egress interface of the switch.
If the macs are not learnt as a part of no mac learning then the forwarding of packets would happen based on flooding and the switch is not that intelligent to differntiate if the packet is icmp or tcp or UDP.
So any packet coming in should be flooded on that vlan, in other words for that vlan, the device would act as a hub and not a switch.
Doesnt seem to be a switc related issue unless we have filters blocking it.
The basic difference between a hub and a switch is the MAC Table, if we are disabling the mac table for the entire switch, then we are transforming a switch to a hub. which is not a good thing, there is no need to shell thousands of dollars for this need.
So definitely the answer is no mac learning for specific vlan with minimal ports on the vlan and not for the entire switch.
what scenario do we use the no-mac learning, when we need some specifc traffic to flood, ex: taking analyzer outputs on multiple interfaces is one such use of no-mac learning.