I really need to see the formula and potentially the sheets to adequately diagnose this. Just based upon your description, if your search criteria is "SK-A-050", then your listing on sheet 2 needs to contain "SK-A-050". You can add a wildcard to the lookup_value and search for additional items that match the lookup value + something else. For example, if you list "*" & "SK-A-050" as your look up value, it would find "MT-SK-A-050" as a match. But you cannot add a wildcard to the lookup_array that you're searching in, meaning you can't search for "SK-A-050" and find a listing of "A-050". It also seems like there is something off with your search_array and return_array. Based on your description, SET_900009 would not be a possible return value absent something else funky going on.
You may actually be better off first using an xlookup on the vendor sheet to match to your master AND then doing another lookup on the master using that value as your search array. However, I do have some concerns that your data may contain multiple matches using that methodology. It really just depends on the precise format of the data, which is hard to tell from your posts.
Further, if the prefix added by your company to the vendor list is predictable, meaning it is always a set number of characters, you can use the "MID" function nested within an xlookup. Using your SK-A-050 example above, the formula would look like this: =XLOOKUP(MID([@item],4,LEN([@Item]),table2[item],table2[price],"",0,1).
Again, if you want to share a sample sheet, even with just dummy data, I can probably help more.