No body of water separates the US. from Mexico
Mexico and Panama
Coastal Plain
That would be the Rio Grande river.
Lake Erie
Alps
The Rio Grande
Mainland Mexico, as well as the southwestern US, specifically southern California, Arizona, New Mexico and southern Texas.
Yes it is considered a landform. It is a small body of ocean that separates two landforms, namely Asia and North America.
I'm guessing you want the Gulf of Mexico, since that separates the US from Mexico (to some extent, though the Rio Grande does that more thoroughly), Puerto Rico, and other Spanish-speaking islands in the Caribbean. ><><><><><>< Not Mexico, and Puerto Rico is not a country (it is a Commonwealth of the US) But the Gulf does separate the US from Cuba.
Cancun is a city in Mexico.
Appalachian Mountains