I may have found his immigration record. This is for a Bruno Wainer, although the birth date is 1866. His birth place was Prussia, he arrived in New York in 1891, and his destination was St Louis. There could be an error in the reported birth date, but the arrival date would be not be incorrect. How sure are you that he was employed in St Louis in April 1890?
"United States Germans to America Index, 1850-1897," database, FamilySearch (https://familysearch.org/ark:/61903/1:1:KDWP-YFK : 27 December 2014), Bruno Wainer, 09 May 1891; citing Germans to America Passenger Data file, 1850-1897, Ship Columbia, departed from Hamburg & Southampton, arrived in New York, New York, New York, United States, NAID identifier 1746067, National Archives at College Park, Maryland
I don't think it's possible find answers to any of the "why" questions, but it might help if you scan and upload the documents you have - birth confirmation, legal name change, and naturalization. It would help to know where he became a citizen (I am presuming Missouri, but didn't find anything worth pursuing there), plus if we can locate his Declaration of Intention that he would have had to file before becoming a citizen, that would have all kinds of information about his trip when he immigrated. Many of the ship manifests show "arrival contact", which might be a friend or relative living at the person's final destination, which might answer the "why St Louis" question.