But if you really want to try to solve this problem, you're going to need more granular data - play-by-play, per-play lineup, injuries, player tracking if you can get your hands on it. The stats you are using are very lossy summaries of the season, so they aren't very strong predictive features.
From a technical POV, consider bucketing some of those per-game stats (e.g. 4 binary features representing which quartile the team's stat falls in compared to every other team that season). This can help to adjust for year-to-year differences. Work with pace-adjusted stats if you have access to them. Find a baseline accuracy by picking the simplest possible non-ML strategy and measuring how accurate that is (e.g. what is the accuracy of a model that always picks the better seed or W/L record?).
You need to adjust your training data to only use data that would have been available at the time of the game - if W/L or PPG includes data from future games, this is a form of data snooping and will probably give you results on your test set that won't generalize to the real world. Time-series snooping is a very easy mistake to make, but it's crucial to avoid it in order to build a good model.
Interesting work, thanks for sharing!