For the first part: if you prefer to view forcing as being done over ctm's, then the fact that your models are countable guarantees the existence of filters for any family of dense sets for your poset (Rasiowa-Sikorski lemma).
The fact is though that one does not need ctm's in order to force. We can view forcing as a purely syntactic notion (introduce a forcing language, show it satisfies some properties, and then argue metamathematically to show consistency). This is how Kunen does forcing.
Or, like how Zhen Lin says, we can take Boolean-valued models as a method of forcing (Jech forces this way), but I'm not sure anyone actually forces this way 'in the real world' - apparently this is really unwieldy, and it's much easier to talk about posets instead.
(disclaimer: just a masters student, take everything i say with a pinch of salt)