As the rosters stand right now, they are a top-3 offense. They are because they scored the 3rd most runs in the league. You suggested they need improvement to be a top-3 offense. You are wrong. Deal with it.
As far as forecasting if the same group would be a top-3 offense next year, I'm not interested in speculating on what will happen for each team and their offseason player acquisitions and how that will impact team scoring. You apparently weren't either, because you didn't say they needed to acquire a player to "stay" in the top-3, but to "get" into the top-3, as if they weren't already, which as established above, they are.
Your first-half / second-half point is bunk too. Using the All-Star break as the dividing line, like most people do when talking first-half / second-half, the team run scoring breaks down as follows:
1st half: 5.28 R/Gm
2nd half: 5.5 R/Gm
They were in 3rd place in total runs scored at the break. They were in 3rd place at the end. They are a top-3 offense.
This doesn't mean I don't think they could stand to improve, but that doesn't change the fact, and it is a fact, that your original premise was dead, flat wrong. If you don't like that, sorry. You can avoid this feeling of faliure if you think a little more before you post next time.