That is based entirely on how the characters are coded. Certain moves generally do not give special/power when you hit with them, or when they are guarded. The only way to fix is on a character by character basis.
IIRC and it's been a while normally specials do not grant meter when you hit with them, only on guard. Although i forget, i would have to look at one of my MvC ones to check and see what's meant to happen.