I know there is STAB but if you use a move of a type that your guy is weak to or not very effective to, does it weaken your attack power?
No, it does not. Remember, dragon type moves are super effective on dragon type pokemon, but dragon type pokemon are just fine using dragon moves;)
No there is not.
It is possible, but it might also never be able to learn it, like a water type pokemon learning a eletric type move
(Not included with Lanturn or its minor evalution