It is an exaggeration that in 16th century the crossing took months.
Columbus's first voyage took 6 weeks (I subtracted the stop on Canary islands).
This was not the shortest route, and this was his first voyage ever! Return crossing took 1 month and 2 days. You can check Wikipedia for his other voyages, and for some subsequent 16th century voyages.
But it is true that the time of an average crossing somewhat improved. First of all, this is due to the better knowledge of currents and prevailing winds, and the choice of optimal routes. One thing is when you travel for the first time, and know really nothing about the conditions; another
is when you use the experience of several generations of previous travels on the same route. In 19th century they could use good maps and the art of navigation made an enormous progress. (At least they knew exactly where they were, in 19th century).
The speed of sailing ships also improved somewhat. The main parameter on which this speed depends is simply the LENGTH of the ship waterline. Everything else is marginal in comparison with this. The average speed of a sailing ship of given length
DID NOT increase since 16 century.
By 19th century they were building bigger ships. Columbus's best ship Niña was less than 50 feet long. An typical late 18th century frigate was 135 feet long, and I suppose that commercial transatlantic ships were not smaller than that. This gives a gain in speed by a factor of 1.6 under similar conditions.
These are the two principal reasons why the average travel time shortened. Of course the conditions on board improved too. In 16th century they had neither private cabins nor berths, and cooked on open fire on the deck. Food and water storage were primitive.
Speaking of the ship construction, there were no revolutionary changes. The main improvement was covering the underwater part by sheets of copper, to protect the wood from barnacles and other similar things. This somewhat improved the speed too, but the main advantage was that it was no longer necessary to careen the ship so frequently for cleaning. This copper covering was very expensive by the way. The changes in rigging were not decisive for speed, and were mostly due to the increased size of ships.
EDIT. To support my point of view, I mention admiral Samuel Morison who repeated Columbus crossing in a yacht, and wrote a biography of Columbus, and a separate book on his navigation. He claims that there was no improvement in the average speed of passage of a sail ship of given length since Columbus days to the 1-st half of 20th century. (But there was significant improvement in safety and comfort).
Finally on the question, who and when invented. The copper sheathing was proposed in 1708 by Ch. Perry, and rejected by the Navy Board because of the high price. In the late 1750s they started experimenting and by the end of 18th century it became standard for the principal European navies.
The single most important improvement in navigation also happened in mid 18th century with the simultaneous development of two different methods of determination of longitude. The key names are Nevil Maskelyne, Thomas Harrison John Hadley and Tobias Mayer. Mathematicians also contributed (Alexis Clairaut, Leonard Euler).