What i want to do is, to delete some parts (on the fly) of the foreground texture out (draw black lines for example), so that the background is visible trough the "deleted" parts of the foreground texture.
In principle, masking on the fly.

I'm not an OpenGL genius, but I think if you're not going to use shaders then you will need to generate an alpha channel for the texture. The logic to read through pixel by pixel and set the alpha to 0 for the black pixels is fairly trivial.

You don't need to read back the pixels from the texture itself. You can just keep the pixel data in memory after uploading it to GL, modify it there, and call glTexSubImage2D to reupload the modified parts. Also, there's no way to know for sure if it's a performance problem until you try it out.

If you describe the effect you're trying to create in more detail, we might be able to suggest more alternatives.

What i like to do is a simple rubber (like in a painting program). I move my finger over the top most texture that portion of this texture should become transparent and the background texture are visible at this parts.