How are models handled in gta/fivem?

As an example, say I want to take a model into blender or some other 3d modeling software and optimize it for use as a game asset. How are the models handled? Are the textures packaged with the file itself? and if so which file extension is the model and textures?

Otherwise what file extension is a model and which file extension are the textures?

Both. It is possible to have textures embedded into the model, and it is possible to have them come from a texture dictionary. The file extensions are: .ydr for a drawable file (“models” in their conventional meaning), .yft for a “fragment” file (usually vehicles), .ydd is a drawable dictionary (usually clothing items, LODLights etc), and the textures, if they aren’t embedded, are stored inside a .ytd file.

BTW, you can’t import any .y** file into 3D modelling software (apart from .yft files into ZModeler3, but that’s for vehicles), you need to convert it to openFormats using OpenIV first if you want to mess with it.