A new chain should not cause skipping problems. It's almost certainly the rear sprockets being worn. The old (worn) chain probably worked pretty good with the sprockets because they were worn evenly. A new chain will be physically shorter between each link, and this tiny difference is enough to cause problems with you use some worn components and some new components, as you are doing.
Any freewheel with the correct number of sprockets should work just fine. Note that gear combinations are not standardized in the slightest, so be careful when getting a replacement that the tooth counts are the same as your old freewheel or at least close enough for your tastes. Also, make sure you don't get a freewheel with a large sprocket (the lowest gear) that is larger than the one on your existing freewheel. This will only cause further nightmares for you with the derailer not being able to take up the slack.
If you're still having trouble shifting the bike into some gear combinations, you need a longer chain. If you fix this and then the derailer can't keep the chain tensioned in other gears, you need a derailer with a longer cage. If this is (or used to be) a stock bike, there should be some configuration that will work with all of the gears.
Also note that it is generally considered poor practice to shift into certain gear combinations. Look at the chain from up by the seat and imagine the angle it creates off of parallel to the top tube in different gears. With a six-speed freewheel and a double-ring crankset, I would recommend skipping the combinations that put you from the innermost chainring to the outermost one or two cogs on the freewheel, and vice versa. See the attached diagram to get a better idea what I mean.