Help with pwm tft dimming

Hi to all,

I’m new to arduino and I need your help.
I’m trying to dim the led backlight of a sainsmart 3.2" tft screen with SSD1289 driver (320QVT) in part of a project I’m following.
In this project, the author uses an NPN transistor BC337 with 1kOhm resistor on base to dim the backlight on a Mega 2560.
On another screen I have using ILI9341 driver, this is working just fine. But it’s not working fine for the SSD1289 screen.
I’m using tft shield (elecfreaks v2.2), so I don’t need 10kOhm resistors.
When I use tft’s shield pin on screen’s pin 19 (LED BL), it’s working fine but with no dimming of course (draws 39.3mAh).
When I connect transistor’s connector to screen’s pin 19, it is dimming but there are glitches on some images (almost corrupted).
I changed the resistor to a 500ohm one to achieve the same current draw as stock pin (because with 1kOhm resistor it was ~30mAh if I recall), but nothing changed.
I really can’t understand it. I have tried with another mega/tft shield/transistor, nothing.
Please note that this screen is working fine on a friend’s same project with 10kOhm! resistor on base (BC337-40, mine is BC337-25, I don’t know if affects anything).
In mine, with 10kOhm resistor it only draws 6mAh, enough to show almost nothing :).
Any help would be greatly appreciated as I’m trying to fix it more than a month.