I must be the old fart here but basically I'd undo most of the rule changes made since the early 80's as well as undo the tolerance for rule breaking for entertainment purposes.
- call palming --> no more allowing players to carry the ball. no more allowing players to dribble by bouncing the ball, catching it and either flipping it over to bounce it again or then throwing the ball to the side for a drive. only dribbling allowed is the old Bob Cousy style hand on top bouncing the ball.
- no more euro-step. ever. it's a freaking travel
- no more flagrant fouls. if it's a grievous hit, it's a foul. if it's deliberately intended to cause harm, call a technical or if it's bad enough, toss the player. no more automatic flagrant (technical) for contact to the face.
- technical foul for a flop and it needs to actually be called more consistently
- more diligence calling 3-second lane violations.
- Officiate all players on both teams the same. no star calls. no rookie calls. no fouls simply because Theis just happens to be on the court. there needs to be penalties for officials that do not follow this especially when it's very apparent there's not an equal whistle being called.
- ditch the circle under the basket where a defender isn't allowed to stand to get a charge. bogus. let them stand wherever they need to stand to get that charge.
that's the changes I'd make to the game itself as a start. I'm ok with the current court size -- hasn't changed so there's no excuse for the players not to know where they're standing on the court.
off the court, I'd penalize any player under contract pushing for a trade to play elsewhere. they signed a contract, honor it. if they don't like it, they can leave the league (without pay) until either they decide to honor the deal or retire from the NBA. The contract and roster spot would be available for the team to use on another player if they choose. (granted if it was a top player it would be impossible to get an unsigned player to come in and play at a top level but bringing in someone would be better than nothing). also, the contract is linked to the player's playing time - if the player had 2 years left on it, they owe 2 years to that team - they don't become free agents in 2 years.