Designing Custom Things
Custom Gels are very much out of the question unless you are a very awesome scripter or happen to know how to access the code for the gels. You can read more about it here.
Changing the Portal Gun's skin is practically like making a custom texture. You just need to find the material file (located inside the game's .pak files) that the Portal gun uses, copy it and create a duplicate folder inside your Portal 2 folder which will hold the skin texture. Any custom content will ovveride the default one automatically. If you want this just for a certain map or level, you will need to pack the material inside your .bsp using pakrat.
Changing portal colours would be extremely difficult. I believe that they are actually a couple of animated textures put together into a script. Unless you want to individually find the files and then change the colour of each frame of the animation manually I think you should leave this one alone.