You always weight paint vertices. The vertices at the bottom of the selected face are shared between the face you are painting and the one below it. As such the weight painting is for both faces.
Dantus has it right. Weight paint is truly on vertices, not faces. It is like vertex coloring. If you color a vertex of a face different from the others, it then “blends” just like that weight painting issue there.
There isn’t much you can do about it, except for know about it and make your models and rigs knowing the issue. The reason this is like this is because the vertices are what gets bound to the bones, and therefore are what moves, so the the bones move the vertices, and the vertices therefore move the faces.
If you need to split up a face, as in the you really need the top attached to one bone and the bottom attached to another bone, and the top to move while the bottom doesn’t, then you can paint the verts that way. The blending of the colors is normal. If for some reason too much geometry is moving with the top bone there, then you can always divide the face up into multiple quads/tris. Then you can control which parts go to which bones. In fact, this is probably a good time to do this, as in better now than after you try to make animations, your UVs are done and painted, etc… these changes are better now than later.