"lowest and principal timber of a ship or boat," mid-14c., probably from a Scandinavian source (compare Old Norse kjölr "keel," Danish kjøl, Swedish köl), which according to Watkins is from Proto-Germanic *gwele- (3) "to swallow" (see gullet).
OED and Middle English Compendium say this word is separate from the keel that means "a strong, clumsy boat, barge" (c. 1200), which might be instead from Middle Dutch kiel "ship" (cognate with Old English ceol "ship's prow," Old High German kiel, German Kiel "ship"). But the two words have influenced each other or partly merged, and Barnhart calls them cognates. Keel still is used locally for "flat-bottomed boat" in the U.S. and England, especially on the Tyne.
In historical writing about the Anglo-Saxons, it is attested from 17c. as the word for an early form of long-boat supposedly used by them in the crossing, based on ceolum in the Anglo-Saxon Chronicle and Medieval Latin cyulis (Gildas). Old English also used simply scipes botm or bytme. On an even keel (1560s) is "in a level, horizontal position," hence figurative extension with reference to stability.
boat n.
"small open vessel (smaller than a ship) used to cross waters, propelled by oars, a sail, or (later) an engine," Middle English bot, from Old English bat, from Proto-Germanic *bait- (source also of Old Norse batr, Dutch boot, German Boot), which is possibly from PIE root *bheid- "to split" (Watkins), if the notion is of making a boat by hollowing out a tree trunk or from split planking. Or it may be an extension of the name for some part of a ship.
French bateau "boat" is from Old English or Norse. Spanish batel, Italian battello, Medieval Latin batellus likewise probably are from Germanic languages. Of serving vessels resembling a boat, by 1680s (ship for "serving vessel or utensil shaped like a ship" is attested by 1520s). The image of being in the same boat "subject to similar challenges and difficulties" is by 1580s; to rock the boat "disturb stability" is from 1914.