Marc D. Anderson has written a blog post named Using SPServices with jQueryUI’s Autocomplete Function on InfoPath Forms in SharePoint
This should help, but as it was written in 2011.. I'm assuming it was for SharePoint 2010 and InfoPath 2010.. But give it a try maybe it works for SharePoint 2013 as well..
The magic is done by script (using SPServices)
window.onload = function() { window.setTimeout(readyCall, 1000); }
function readyCall(){
var externalParties = [];
$().SPServices({
operation: "GetListItems",
listName: "External Parties",
CAMLViewFields: "",
async: false,
completefunc: function (xData, Status) {
$(xData.responseXML).SPFilterNode("z:row").each(function() {
externalParties.push($(this).attr("ows_Title"));
});
} });
//<input tabIndex="0" title="" class="q_zwfUqJo2fRthHnM4_0 as_zwfUqJo2fRthHnM4_0b9_zwfUqJo2fRthHnM4_0" id="ctl00_m_g_a226da68_1383_40e3_8410_1ada27d49dcf_FormControl0_V1_I1_T2" aria-invalid="true" style="position: relative;" onfocus="return (TextBox.OnFocus(this, event));" onblur="return (TextBox.OnBlur(this, event));" onpropertychange="return (TextBox.OnPropertyChange(this, event));" type="text" OriginalId="V1_I1_T2" FormId="ctl00_m_g_a226da68_1383_40e3_8410_1ada27d49dcf_FormControl0" ViewDataNode="3" direction="ltr" wrapped="true" ScriptClass="TextBox" VCARD_NAME="91161f891e59461042587839b2504693728ce05a" ?=""/>
$("input[id$='FormControl0_V1_I1_T2'], input[id$='FormControl0_V1_I1_T3']").autocomplete({
source: externalParties,
minLength: 3
});
}