ah I see, yes my idea only works if the elements do not overlap on top of eachother. If you are going to have them spaced apart then it should work fine. but the fact that you are not channel packing seems to me to indicate they cannot overlap anyways.
This is probably excessive in your case but you could solve it with manual texture filtering. Somebody mentioned disabling texture filtering and that is probably the best option. You can write your own manual texture filtering. But then you will be in a weird place where you can’t really get nice aniso mips since you will have to do it manually. if its just for a UI element its not a big deal. You may be able to find some guides on manual texture filtering. a tutorial on that is a bit too lengthy to come up with on the spot though.
either that or you simply use a different channel for each mask. that solves it entirely but then you only get 4 elements per texture. if you channel pack you dont have the luminosity problem since the channels are independent (except for some leaking compression artifacts, go uncompressed if it matters).