A couple of the problems with frames is that they are generally not search engine friendly, and they tend to make it hard for users to bookmark internal pages. And of course, you've run into a 3rd issue with them. 🙂
As far as the location headers, if what I suggested with the Window-target header before the Location header does not work, you could try it as one header:
header('Location: http://localhost/screen1_frame.htm;Window-target: _top");
PS: I edited my previous reply, changing "_parent" to "_top", as it's been awhile since I used frames, and forgot which target to use. 😉