unity – Rendering different layers on different cameras?

I have some decals on a wall and there is Z-fighting with the wall itself:

enter image description here

I tried the following:

  • add two cameras, each rendering a different layer

No more Z-fighting but now decals can be seen through walls:

enter image description here

Obviously, as decals are rendered after walls, they’ll always be over walls no matter what…

How can I tackle this problem?