it looks like there's a 7:42pm OBB after the 6:42pm Swiss Railways.
What are you talking about? Swiss Railways is not involved between Vienna and Budapest.
Should you miss the train to Budapest because of late arrival of the train from Venice, there is the next one about one hour later. If the arrival time of that train is too late for your check-in at your accommodation you should consider other possibilities.
First I would call or email the lodging explaining the situation, and ask if a later check-in is possible. If not you should look for other transport options.
NightJet train from Venice to Vienna, arriving in the morning, plenty of time to catch a train to Budapest.
Flight from Venice to Budapest, cheapest option about $140, flight time 4:30 hours, one layover (Brussels Airways)
Early train to Udine, bus to Villach, train to Vienna, train to Budapest.