Why can I only texture paint some parts of the model
In your first photo the reason why your texture looks so strange is because the UV associated with that face is squished in a way that it can only take the colour of a single row of pixels. A way to fix this is to select some of your edges and right click, then create seams. Then select everything and press U, then smart unwrap. This should be able to make your UV map easier to work with.