1. RustOleum oil enamel (in this case Painter's Touch in white, matte I think, or satin. Clear coat is Painter's Touch matte clear, very thin layers)
2. This was a "matte" textured case project, so no glossy paint was used. You can definitely use clear gloss in multiple layers, followed by sanding and polishing to achieve a very glossy reflective look.
3. You dont need to do much preparation. You need to clean the surface of any grease and impurities (mild low-residue liquid soap, maybe some alcohol). Sand any roughness with 400-grit+ sandpaper, as anything less smooth will come through the paint in the end, after it dries. Though if you do a lot of clear coats, the paint layer will be thick, and you can sand off a lot of unevenness and orange peel texture later. But that's something to do only if you are sure you want a reflective finish and needs more tips.