I know recipes aren't versioned, but is it possible in an environment to have some recipes use a specific version of their cookbook and some use a different version?
You can only pin cookbooks in environments. There is no way to mix a cookbook with recipes from different cookbook versions.