Game Boy Color can do this to sprites. IT separates sprites in layers, like background, character, menu and effect layers (not exactly) then applies a separate palette to each to visually emulate GBC games. (kinda. I explained horribly.)
We're emulating a GB game played on a GBC. The sprites and tiles are rendered separately with a different palette for each. The tiles have four colors (blackish, gray-blue, gray-green, white) and the sprites have three colors (blackish, brown, white, and ~transparency~). It's actually pretty faithful to how the original hardware works, and there's a shader in place to make sure that no more than those colors are rendered at a time.