Ok maybe this is how it should work but maybe this is a little too
All players should get a work ethic rating (barely affects overall) and every off season the player will progress in accordance to that rating, for example Maurice jones drew would prob get a work ethic rating of about 95, now every off season Maurice jones drew will work his *** off to get better for you... But... Every off season you get to decide what route that player should take to get better, in essence you could make him worse, all depends in the type of back. Let's say you tell him to go out and gain 10-20 pounds, this will make his trucking and stiff arm go up but drop his jukes, spins, speed, etc. Than again you could tell him to cut 5 pounds and it'd do the opposite. This method of player progression is not gonna a whole lot to the overall rating, an increase or decrease of 10 at most. This can be used for every position, examples u could tell a qb to work on accuracy and mobility, o line- pass blocking run blocking, etc.
Training camp should also be involved. Maybe the team runs 30 random plays every day for 2 weeks or what not. If the training camps are successful then your players should progress (very minimal).
Now for during the season stats should affect the work ethic rating and minimally affect physical ability ratings. Example say we have a a left tackle that goes out and pancakes 5 dudes his run blocking should go up a couple points every game he performs this well, this also works quite the opposite.
So maybe during season you could increase or decrease a player up to 5 points. Now at the end of the season the work ethic comes into play with the stats, the work ethic will increase a lot for players that did well with lower ratings and increase but not as much for those players that did well but have higher ratings already.
I mentioned above that you could increase a player up to 10 points during the off season, just wanted to elaborate that it'd be that high for mediocre players, elite players will be harder to increase.
Here's a good idea for player of the week, superbowk MVP, etc. If one of your player achieves this award you can get a certain amount of rating boost points, so if Jamarcus Russel wins offensive player if the week u could increase his avcuracy or throw on the run or w.e you choose by maybe 3 points, or distribute it evenly however u choose to do it.
I think that'd give everyone everything they want. Stats being involved but not completely dominant. More player control and what not w.e I just think that'd be the best way. Throw in some kind of aging system and maybe a record breaking stat booster and it's perfect. And if no one wants to go through all the trouble of the system you can always sim it. In the end you could increase a player 20 points maybe even more.
If anyone wants to add their ideas to improve it be my guest