In general case, yes, you are correct: the functions used for printing may send text to the device using functions that take text. That way, the printer (in this case, a virtual printer) can then put the text to the resulting media (a PDF in this case) as text.
But in the specific case, it is obvious that the print procedure for some reason preprocesses the data into a raster image before sending to device. As said, it’s difficult to say what is the reason (which is your question, and which is what can only be answered having a sample of problematic document), but that’s different from idea that the problem is on Foxit side.
Yes and no.
PDF is a complex format, and it may contain many kinds of data: text, lines, raster images, fonts… And when displaying, your PDF reader indeed outputs that data, that way forming the final image. But it does different things to output the data: e.g., when it deals with embedded raster, it simply copies pixels from internal raster to the monitor (I’m simplifying). To show text, it would do more complex things, and that would depend on if that text refers to embedded fonts or no (but this is unrelated to this problem).
In your case, LibreOffice forms a raster image, sends it to the printer, and it has no text data, only a picture, which gets embedded to the resulting PDF. Then your reader will simply show that raster.